Once I found this page on the web which says the same thing: http://translate.google.com/translate?hl=en&sl=de&u=http://www.ijon.de/comp/tutorials/threads/gdkgtk.html&prev=/search%3Fq%3Dgtk%2Bthreads%26hl%3Den%26lr%3D%26ie%3DUTF-8%26sa%3DG good luck, Bharat -------------------------------------------------------------------------------- On Thu, 31 Jul 2003 seberino@spawar.navy.mil wrote: > Thanks for the help. I read the URL you gave me and I couldn't find where it > explicitly said not to use gdk.threads_enter() and gdk.threads_leave() > when gtk main loop was running. However, I think this is a good idea. > > The best overall solution seems to be to put all GTK+ commands in > main/parent thread and never in child threads. Then I can forget > about gdk.threads_enter() and gdk.threads_leave() because no other > thread will ever clash with the GUI work (1 thread has GTK+ stuff only.). > > Thanks again. > > Chris > > On Thu, Jul 31, 2003 at 05:34:05PM -0700, Bharat Bhushan wrote: > > We cannnot use gdk.threads_enter() and gdk.threads_leave() blindly. You > > need to understand why / when these functions are used, otherwise the > > program will freeze. For example, you cannot use these functions when > > gtk main loop is running (like it does when we call gtk_dialog_run(), > > for example). There is decent documentation abt it at: > > > > http://developer.gnome.org/doc/API/2.0/gdk/gdk-Threads.html > > > > good luck, > > Bharat > > -------------------------------------------------------------------------------- > > > > > > On Thu, 31 Jul 2003 seberino@spawar.navy.mil wrote: > > > > > We have a Python GTK+ program that uses threads. > > > If we DON'T run the GTK+ GUI > > > code then multitasking is fine and every thread gets a little CPU time. > > > > > > If we run a GTK+ GUI in the main parent process/thread then program > > > freezes. > > > > > > The PyGTK commands called gtk.threads.thread_enter() and > > > gtk.gdk.threads_leave() are used to avoid conflicts caused by > > > two threads writing to GUI at the same time. The disallow/allow > > > other threads to write to GUI as needed. > > > > > > It would seem that the problem are with these two commands but > > > we cannot seem to find the problem. As you know, threads > > > are not the easiest things to debug. > > > > > > We are wondering if Python threads are unstable. > > > Are they?? > > > > > > Any ideas at all how to begin to solve this? > > > > > > Chris > > > > > > -- > > > _______________________________________ > > > > > > Christian Seberino, Ph.D. > > > SPAWAR Systems Center San Diego > > > Code 2872 > > > 49258 Mills Street, Room 158 > > > San Diego, CA 92152-5385 > > > U.S.A. > > > > > > Phone: (619) 553-9973 > > > Fax : (619) 553-6521 > > > Email: seberino@spawar.navy.mil > > > _______________________________________ > > > _______________________________________________ > > > > > > gtk-list@gnome.org > > > http://mail.gnome.org/mailman/listinfo/gtk-list > > > > > -- > _______________________________________ > > Christian Seberino, Ph.D. > SPAWAR Systems Center San Diego > Code 2872 > 49258 Mills Street, Room 158 > San Diego, CA 92152-5385 > U.S.A. > > Phone: (619) 553-9973 > Fax : (619) 553-6521 > Email: seberino@spawar.navy.mil > _______________________________________ >