[PyKDE] Re: Threading problem with PyQt4 and Macosx

Michael Guntsche mike at it-loops.com
Sat Feb 24 09:49:02 GMT 2007


On Feb 23, 2007, at 23:34, Matt Newell wrote:

>
> Try testing with this patch, it eliminates all deadlocks for me.
>

Ok, even after applying this patch using "setText()" gives me an  
immediate deadlock.
I made some further tests.

Using:
	self.connect(self, QtCore.SIGNAL("steip(const QString &)"),  
self.container.write,QtCore.Qt.QueuedConnection)

write doing a textEdit2.setText()

The connect succeeds but nothing happens.
If I do not define the connection type I get the following error.

	QObject: Cannot create children for a parent that is in a different  
thread.
	Bus error

So it seems to use a direct connection and therefore bombs out.

Using:
	self.connect(self, QtCore.SIGNAL("steip(const QString &)"),  
self.container.textEdit2,QtCore.SLOT("setText(const QString  
&)"),QtCore.Qt.QueuedConnection)

as a connect works without a problem. I can go well over 100 threads  
and kill them as fast as I want.

So why is the first connect not working with a QueuedConnection?

/Michael




More information about the PyQt mailing list