[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: Xlib: unexpected async reply (sequence #####)!
- From: Gregory Hosler <ghosler redhat com>
- To: gtk-app-devel-list gnome org
- Subject: Re: Xlib: unexpected async reply (sequence #####)!
- Date: Sat, 04 Aug 2007 22:07:48 +0800
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
David Ne?as (Yeti) wrote:
> On Sat, Aug 04, 2007 at 09:38:25PM +0800, Gregory Hosler wrote:
>> I have a threaded gtk application. The threads create some gui (gtk
>> widgets/windows). and most of the time (maybe 80%) everything works as expected.
>> Occassionally I will get the message on stdout
>>
>> Xlib: unexpected async reply (sequence #####)!
>>
>> the ### is an x event sequence number
>>
>> I am suspecting that this is because of the x calls from 2 different threads.
>>
>> Is this a known problem?
>>
>> Any way around this ? (I thought gtk was supposed to be thread ok :)
>
> The answer depends on your defintions of `OK', `known' and
> `problem':
> - Gtk+ is thread-aware
> - Gtk+ is not thread-safe
>
> If you operate on the GUI from multiple threads:
> - you are responsible for the locking on Unix/X
> - it will just not work on MS Windows
>
> See
>
> http://developer.gnome.org/doc/API/2.0/gdk/gdk-Threads.html
That threads_enter/threads_leave doesn't look so bad, since I'm not doing alot
of gtk withing my thread. Looks like it might be the way to go for me.
thanks for the pointer!
- -G
> People typically operate on the GUI only from the main
> thread (i.e. running gtk_main()) and pass work requests to
> it via g_idle_add() or some other queue mechanism.
>
> This topic is discussed here every other week, see the list
> archives.
>
> Yeti
>
> --
> http://gwyddion.net/
> _______________________________________________
> gtk-app-devel-list mailing list
> gtk-app-devel-list gnome org
> http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list
- --
+---------------------------------------------------------------------+
Please also check the log file at "/dev/null" for additional information.
(from /var/log/Xorg.setup.log)
| Greg Hosler ghosler redhat com |
+---------------------------------------------------------------------+
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (GNU/Linux)
iD8DBQFGtIgy404fl/0CV/QRAjb8AKDcG5q92/8nh9/AzPUfO/gFc1I01ACfWq9i
X2oqg4dOP2r8i/yCjCz+nOc=
=IQs8
-----END PGP SIGNATURE-----
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]