On Wed, 2 Sep 2020 10:46:48 GMT, Jeanette Winzenburg <faste...@openjdk.org> wrote:
>> When the startup time is measured by eye, the impression changes depending >> on the individual difference. >> The effect of runLater affects your experience. >> >> However, I succeeded in further improving performance by eliminating another >> bottleneck in TreeTableView. Of course, it >> also includes improvements in startup time. >> I plan to commit at a later date. > >> >> >> When the startup time is measured by eye, the impression changes depending >> on the individual difference. > > my eye is a precision instrument :) Seriously, who would do such a thingy? > Obviously, it must be measured, for zeroth > approximation doing so crudely by comparing currentMillis before/after > showing is good enough to "see" the tendency. >> The effect of runLater affects your experience. > > that's why you shouldn't do it when trying to gain insight into timing issues > ;) > >> >> However, I succeeded in further improving performance by eliminating another >> bottleneck in TreeTableView. Of course, it >> also includes improvements in startup time. > > cool :) Column virtualization causes shortness of breath when scrolling a large stroke horizontally. This does not happen when stroking on the scrollbar. Looks like a potential problem with VirtualFlow. If you are worried about shortness of breath, the following code will help reduce the problem. Java  private static final int OVERLAP_MARGIN = 500; private static boolean isOverlap(double start, double end, double start2, double end2){ start = Math.max(start-OVERLAP_MARGIN, start2); end = Math.min(end+OVERLAP_MARGIN, end2); return (start<=end2 && end >= start2); } ------------- PR: https://git.openjdk.java.net/jfx/pull/125