Re: Work woth GUI from a thread that was made by pthread_create function
- From: Charles Kerr <charles rebelbase com>
- To: gtk-app-devel-list gnome org
- Cc: Pawel Salek <pawsa theochem kth se>, admin kiesoft com, Gtk Hackers <gtk-devel-list gnome org>, Michael Meeks <michael ximian com>, gnome-devel-list gnome org
- Subject: Re: Work woth GUI from a thread that was made by pthread_create function
- Date: Mon, 11 Feb 2002 09:45:09 -0600
On Mon, Feb 11, 2002 at 11:11:31AM +0000, Michael Meeks wrote:
Hi Pawel,
On Thu, 2002-02-07 at 20:36, Pawel Salek wrote:
You need to lock gdk mutex before entering the main loop.
gdk_threads_enter();
gtk_main();
gdk_threads_leave();
You also need to drop locks before doing things eg.
gdk_threads_leave ();
do_some_gtk_call ();
gdk_threads_enter ();
eg. in signal handlers, and such like - but it very much depends if the
signal is emitted from the Gtk mainloop, or explicitly from another
source, if from another source then depending on whether you're in a
mainloop you need to lock,unlock or unlock,lock in a not altogether
clear fashion.
In short I'd avoid threads & Gtk+ like the plague.
In general I'd agree. Pan is a pthreaded app, and I would've saved myself
a lot of pain if I'd avoided pthreads.
That said, 0.11.2 has some small pieces of code to make pthreaded gtk+ apps
a little less painful. Anyone hell-bent on pthreads may want to look at its
source.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]