Use of threads causes hangs in Ubuntu Lucid

Bug #632081 reported by Benjamin Roberts
4
This bug affects 1 person
Affects Status Importance Assigned to Milestone
BloGTK
New
Undecided
Unassigned

Bug Description

In the current version in Bazaar (I checked out the recent updates this evening), any function that uses threads, marked by @threaded and including calls to gtk.gdk.threads_enter() and gtk.gdk.threads_leave(), seems to hang in Ubuntu Lucid.

I couldn't figure out how to fix the problem, but in my investigative work to find out where it's coming from in doIntrospection (one of several places this problem manifests), I found the following:

* The hang can be prevented by commenting out the "@threaded" directive, along with the threads_enter() and threads_leave() calls.

* The hang can also be prevented if a "threads_leave()" followed by "return False" is put in anywhere before winProgress.show_all().

* If winProgress.show_all() is left in, gdb reports that not one but two threads are started up in doIntrospection, and that only one is terminated. However, if a return is put in before that point as described above, only one thread is started, and is successfully stopped.

My workaround for the time being has been to disable threading in all except the main method, but this may cause its own problems.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.