[Dev] Eric3 Python IDE

Andi Vajda vajda at osafoundation.org
Fri Sep 2 08:41:21 PDT 2005


> This reminded me to look at multithreaded debugging in Komodo (I'm running 
> the Mac OS alpha). It turns out that setting breakpoints in an ordinary 
> python thread works just fine. However, if you use a PyLucene thread (as 
> Chandler does), breakpoints do not work. Anyone have an idea as to why?

The PyLucene.PythonThread class is a subclass of threading.Thread that 
delegates to libgcj the creation and starting of the OS thread. This is 
because libgcj's garbage collector does not support adding threads to the java 
environment after they have been created and started, the java.lang.Thread 
class must be used instead.
There are then in fact two thread objects, one python, one java that 
correspond to one OS thread. I don't know what assumptions the debuggers are 
making about python threads but a PyLucene.PythonThread instance looks the 
same to python's threading module and python treats it as one of its own.

Andi..


More information about the Dev mailing list