Re: linux vs. win32: gdk_threads_enter behaving different
- From: Kevin DeKorte <kdekorte gmail com>
- To: Felix Kater <fkater googlemail com>, gtk-app-devel-list gnome org
- Subject: Re: linux vs. win32: gdk_threads_enter behaving different
- Date: Fri, 15 Jun 2007 11:24:21 -0600
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Felix Kater wrote:
Could anyone please explain this behaviour:
Imagine a simple window with 1 box and 2 buttons in it. If you press
the first button, the second is destroyed, and a newly created button
packed into the box. This *works* on linux and win32 (gtk+-2.10.13).
Now, let button 1 start a thread which does the same. On linux,
gds_threds_enter is passed, on win32 it blocks forever. (Strange enough,
win32 does not block in case the second button is a label.)
My workaround: The thread itself calls g_idle_add() to do the job.
So, my conclusion: On the contrast to linux, unter win32 there is no way
to use gdk_threads_enter() to synchronize between different threads.
Felix
Felix,
- From my limited GTK experience I have found that g_idle_add always seems
to work better than using gtk_threads_enter/leave. So I would recommend
that you try and use g_idle_add always.
Kevin
- --
Get my public GnuPG key from
http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x7D0BD5D1
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (GNU/Linux)
Comment: Using GnuPG with Remi - http://enigmail.mozdev.org
iD8DBQFGcstE6w2kMH0L1dERAua0AJ9/ckyFQeA+kdfphA13dQwr7+8DcACfb4tm
ox49n+fX8oTMvG06BGNP9Ng=
=e6Q+
-----END PGP SIGNATURE-----
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]