[PyKDE] pyqt/mysqld thread deadlock

Kaleb Pederson kibab at icehouse.net
Wed Jan 1 20:55:03 CET 2003


On Wednesday 01 January 2003 11:40 am, you wrote:
> On Wednesday 01 January 2003 5:58 pm, Kaleb Pederson wrote:
> > -----BEGIN PGP SIGNED MESSAGE-----
> > Hash: SHA1
> >
<snip>
> >
> > It turns out, however, that the thread locks in the middle of my run()
> > call and never completes. I'm cross-posting this message as I'm not
> > familiar with Python extension modules and I don't know if PyQt could
> > have caused this, it is a Python bug (or feature) or if there is a
> > problem in the mysqldb module code.
> >
<snip>
> > So does anyone have any idea what's wrong or how to fix it? Please email
> > me as well if you aren't posting to the PyQt/Python list (kibab at
> > icehouse dot net).
>
> To quote the Python source the lock is "to prevent parallel imports of the
> same module in different threads to return with a partially loaded module".
> What other imports (or the same import in other threads) might be happening
> at the same time?
>

At this point in my application there is nothing else "NEW" going on.  That 
is, I'm in the middle of the event loop and this occurs in response to a 
button press.  The thread, of course, returns control to my application which 
then waits for more user input.  I can think of no reason anything else would 
be trying to import ListType, TupleType, or exc_info.  Furthermore, this is 
the first thread I spawn (although the behavior is similar for all subsequent 
threads) thus, I would hope there would be no other blocked threads.

Phil, wouldn't the block cease once the "other" thread had successfully 
imported the module thereby unblocking my thread?  Never through the rest of 
my application life does that thread unblock.

Thanks for the info.

--Kaleb






More information about the Python-list mailing list