[PyQt] deadlock when using new style signal / slots

Hans-Peter Jansen hpj at urpla.net
Mon Sep 6 09:43:07 BST 2010


Dear Erik,

On Friday 27 August 2010, 21:56:14 Erik Janssens wrote:
> Hi,
>
> Another issue popped up when porting our code to
> new style signal slots.
>
> it appears the deadlock occurs when one thread is
> emitting using a pyqtSignal object, while another
> thread is connecting the same pyqtSignal object to
> a slot,

I don't believe, that this is _directly_ related to the new style 
signal/slot idiom, but you might want to experiment with the connection 
type argument of connect. 

> this is the pseudocode for the connection : 
>
> class(...):
>
>     def __init__(...):
>       self.rsh.entity_update_signal.connect( self.handle_entity_update )
>
>     @QtCore.pyqtSlot( object, object )
>     def handle_entity_update( self, sender, entity ):
>         ...
>
> Are these operations supposed to be thread safe or am
> I missing something ?
>

BTW, the camelot website http://www.python-camelot.com/ seems to be down 
since some time.. What's the state of your project?

Best regards,
Pete


More information about the PyQt mailing list