PyQt4, QThread and opening big files without freezing the GUI

Posted by jmrbcu on Stack Overflow See other posts from Stack Overflow or by jmrbcu
Published on 2009-11-20T22:51:02Z Indexed on 2010/05/04 1:28 UTC
Read the original article Hit count: 349

Filed under:
|

Hi, I would like to ask how to read a big file from disk and maintain the PyQt4 UI responsive (not blocked). I had moved the load of the file to a QThread subclass but my GUI thread get freezed. Any suggestions? I think it must be something with the GIL but I don't know how to sort it?

EDIT: I am using vtkGDCMImageReader from the GDCM project to read a multiframe DICOM image and display it with vtk and pyqt4. I do this load in a different thread (QThread) but my app freeze until the image is loaded. here is an example code:

class ReadThread(QThread): 
    def __init__(self, file_name): 
        super(ReadThread, self).__init__(self) 
        self.file_name = file_name 
        self.reader.vtkgdcm.vtkGDCMImageReader()

    def run(self): 
        self.reader.SetFileName(self.file_name) 
        self.reader.Update() 
        self.emit(QtCore.SIGNAL('image_loaded'), self.reader.GetOutput())

© Stack Overflow or respective owner

Related posts about python

Related posts about pyqt