This is a re-post of a previous message.
I know I'm a pest, but I really would like some help answering these questions. Is the java datawindow just inherently CPU intensive while it is being displayed? Is there a good way "around" this...a different control, JTable, a custom JScrollpane, etc?
We are working on a monitoring application, using PowerJ and Jaguar, that
will take a "live feed" of data, and display the rows of data so that they
scroll up from the bottom. That is, as new rows come in, they are added to
the bottom of the list, and older data is "pushed" up. We have been
successful in using a grid style data window to do this, however, as the
number of rows grows, so does the CPU usage. It eventually gets to the
point that the rest of the app is affected...windows open slower, and such.
We need the grid so that users can change column order and such. We want to
use the datawindow grid for ease of programmability (we are old PowerBuilder
folks). Is there a magic bullet that will help us out with the CPU
Here are some more details... The Datawindow is always available, though
it is not always displayed. Whether or not it is being displayed, the
thread that "feeds" it continues to add records to it. When it is not being
displayed, the CPU usage is much lower during these adds. When it is being
displayed, the adds cause the the CPU to spike up greatly, even pinging
100%. The thread is used to retrieve data from a Jaguar component. Once
retrieved, it is populated into a datastore, then the rows are copied to the
bottom of the DataWindow.
Does anyone know if this is easily fixable? Is there a more efficient way
to display the rows? (Remember the CPU is only hit hard if the datawindow is
being displayed, so I don't think the overall set up is the culprit -- maybe
it's not the best design, but it does not seem to effect the performance.)
Any help or suggestions will be appriciated.