On Fri, 2004-11-12 at 00:50 -0300, Mario Fuentes wrote:
> All machines are GNU/Linux (Debian).  I'm confused about how to use
> Gdk.Threads.[Enter|Leave](), occasionally the GUI is freezed.

Don't use Gdk.Threads.Enter and Gdk.Threads.Leave, *ever*, unless you
(1) *really* know what you're doing, and (2) *REALLY* know what you're
doing.  GTK+ isn't thread safe -- most toolkits aren't -- and trying to
manipulate widgets from a different thread is tricky, at best.

Instead, use GLib.Timeout.Add (with a small timeout) or
Gtk.ThreadNotify.  You can pass each of these a delegate, which will be
invoked from the GTK+ UI thread, so you don't need to worry about
locking/unlocking the application, cleaning up your code, and
maintaining your sanity.

 - Jon


_______________________________________________
Mono-list maillist  -  [EMAIL PROTECTED]
http://lists.ximian.com/mailman/listinfo/mono-list

Reply via email to