[PyKDE] PyQt 3.12 introduces deadlock with QCustomEvent's destructor.

Toby Dickenson tdickenson at devmail.geminidataloggers.co.uk
Tue Aug 17 16:50:14 BST 2004


On Monday 16 August 2004 17:09, Truls A. Tangstad wrote:
> It's a hard pill to swallow though, since this means our application
> will have to be infected with Qt in layers not at all related to GUI,
> just because GUI components can register callbacks etc. in them.

We have used a cheeky workaround to avoid that infection....

Our worker threads are using the standard python threading library. They were 
previously isolated from Qt by a seperate module that used QCustomEvent and 
postEvent.

We have changed that module to start its own QThread. Event data is first 
forwarded into that thread using python's Queue.Queue. In that thread we 
create a QCustomEvent to hold the data, and postEvent it into the gui thread.

We have only ever seen repeatable crashes on one machine..... I will test 
there tomorrow.

I feel dirty.

-- 
Toby Dickenson




More information about the PyQt mailing list