Re: gtkmm 3.4.0 (gtk 3.4.2) multithread app graphic deterioration
- From: Kjell Ahlstedt <kjell ahlstedt bredband net>
- To: Giuseppe Penone <giuspen gmail com>
- Cc: Gtkmm list <gtkmm-list gnome org>
- Subject: Re: gtkmm 3.4.0 (gtk 3.4.2) multithread app graphic deterioration
- Date: Sat, 07 Jul 2012 09:14:23 +0200
I don't know if this is any help, but anyway, have you seen these
comments at
http://developer.gnome.org/gdk3/stable/gdk3-Threads.html
-- Unfortunately the above holds with the X11 backend only. With the
Win32 backend, GDK calls should not be attempted from multiple threads
at all.
-- Before calling gdk_threads_leave() from a thread other than your main
thread, you probably want to call gdk_flush() to send all pending
commands to the windowing system.
Kjell
2012-07-05 14:52, Giuseppe Penone skrev:
Hi,
I'm writing a multithread app where different threads operate on the
graphic.
The non gui threads operate on graphic only after semaphores:
gdk_threads_enter();
OPERATION ON GUI FROM NON GUI THREAD
gdk_threads_leave();
and the gui thread is opened this way:
g_thread_init(NULL);
gdk_threads_init();
Gtk::Main kit(argc, argv);
...
gdk_threads_enter();
Gtk::Main::run(p_window);
gdk_threads_leave();
After some time the gui starts to deteriorate as in screenshot
http://www.freeimagehosting.net/hjltx (label over an icon, columns not
expanding...).
I have no clue about what could be wrong since there is no
warning/error from the terminal
while in the past when I missed a gdk_threads_enter/gdk_threads_leave
I had errors printed and the app crashed.
Can anybody help me to understand where the error could be given the
screenshot?
I'm also considering porting the app back to gtkmm2 but since I use
glade I'm afraid this will be not that easy.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]