[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [cp-patches] RFC: revert single thread GTK event queue design
From: |
Thomas Fitzsimmons |
Subject: |
Re: [cp-patches] RFC: revert single thread GTK event queue design |
Date: |
Mon, 15 Aug 2005 14:33:05 -0400 |
On Mon, 2005-08-15 at 00:20 -0400, Thomas Fitzsimmons wrote:
> Hi,
>
> This patch reverts EventQueue and the GTK peers from its current single-
> threaded design to a simpler two-threaded design. The GTK main loop
> will now run in its own thread, separate from the AWT event dispatch
> thread. I'm reverting this for two reasons:
>
> One, the contention between the AWT event queue lock and the GDK lock was
> impossible to resolve satisfactorily. The single threaded design was only
> workable if we could release the GDK lock in GTK callbacks that posted to the
> event queue (thus acquiring the AWT event queue lock). It turns out that it
> is unsafe to release the GDK lock in that situation. Therefore our current
> callbacks are wrong, and the assumption that the single threaded design
> relied on is invalid.
>
> Two, the single-threaded design introduced new methods to
> ClasspathToolkit and calls to those methods in EventQueue. With the
> introduction of the Qt peers, there's a push to remove references to
> ClasspathToolkit from within the java.awt namespace.
>
> Comments?
I got positive comments from people on IRC, so I committed this.
Tom