RFR: 8185886: Improve scrolling performance of TableView and TreeTableView
fastegal at openjdk.java.net
Tue Feb 18 09:06:32 UTC 2020
On Thu, 6 Feb 2020 16:22:28 GMT, dannygonzalez <github.com+6702882+dannygonzalez at openjdk.org> wrote:
>> Optimisation to ExpressionHelper.Generic class to use Sets rather than Arrays to improve listener removal speed.
>> This was due to the removal of listeners in TableView taking up to 50% of CPU time on the JavaFX Application thread when scrolling/adding rows to TableViews.
>> This may alleviate some of the issues seen here:
>> TableView has a horrific performance with many columns #409
>> JDK-8088394 : Huge memory consumption in TableView with too many columns
>> JDK-8166956: JavaFX TreeTableView slow scroll performance
>> JDK-8185887: TableRowSkinBase fails to correctly virtualise cells in horizontal direction
>> OpenJFX mailing list thread: TableView slow vertical scrolling with 300+ columns
> I have signed the Oracle Contributor Agreement today. Have not received back any confirmation yet though.
hmm ... wouldn't the change violate spec of adding listeners:
> If the same listener is added more than once, then it will be notified more than once.
More information about the openjfx-dev