This is the mail archive of the java-discuss@sourceware.cygnus.com mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: AWT



Jeff Sturm <jsturm@sigma6.com> writes:

> I haven't seen any real performance degradation with heavyweight AWT
> components until a container has hundreds or thousands of heavyweight
> components... for some reason, both Win32 and Motif widgets seem to
> choke when they reach some critical mass.  I observed this back in the
> good ol' 1.0 days when I was laying out large arrays of Button widgets
> for a certain project.

This was probably not Win32 or Motif choking but more likely JNI
overhead and/or poor management of X events.

As for the client/server debate there is something to storing info on
the server for performance boosts.  Widgets for example tell the X
server to paint the background a certain color and then the widget is
only responsible for painting the border.  You can't do that with
lightweight components where the whole GUI is painted on one X window.

Seems to me Swing/lightweights could probably be implemented very
efficiently using X's shared memory extension.  Programs that need to
access non-regular pieces of a window, such as pixel by pixel stuff
(images processing) use this a lot.  Swing is essentially doing the
same thing.

Swing on the JDK probably draws the entire GUI in the client and
probably sends the whole thing to the server through the X protocol
socket.

--
Tom Reilly
Allaire Corp.
http://www.allaire.com

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]