-
Enhancement
-
Resolution: Unresolved
-
P4
-
None
-
5.0
-
generic
-
generic
The AWT Native Interface has different locking behavior on Windows and X11
platforms. When a JAWT_DrawingSurface is locked on Windows, the lock affects
only the component in question; no global lock is obtained, which means that the
component can be kept locked for multiple native redraw cycles. This is an
important performance optimization for some use cases (in particular, OpenGL).
On X11 platforms with the current Motif-based AWT, locking any component's
JAWT_DrawingSurface causes the global AWT lock to be acquired. This causes AWT
event processing to be suspended and has other undesirable side effects like
preventing synchronous calls to System.exit() from within the native drawing
routine. For 1.5 (and possibly only for the XAWT), please improve the locking
behavior on X11 to be on par with that on Windows, for better performance and
ease-of-use.
platforms. When a JAWT_DrawingSurface is locked on Windows, the lock affects
only the component in question; no global lock is obtained, which means that the
component can be kept locked for multiple native redraw cycles. This is an
important performance optimization for some use cases (in particular, OpenGL).
On X11 platforms with the current Motif-based AWT, locking any component's
JAWT_DrawingSurface causes the global AWT lock to be acquired. This causes AWT
event processing to be suspended and has other undesirable side effects like
preventing synchronous calls to System.exit() from within the native drawing
routine. For 1.5 (and possibly only for the XAWT), please improve the locking
behavior on X11 to be on par with that on Windows, for better performance and
ease-of-use.