Reduce the use of JavaFX RAM

I have a java program that shows 4 LineChartsin real time. Each of them has 2 series (I use XYChart.Series<Number, Number>()because it LineChart.Series<Number, Number>()shows a warning), and the user can move along the X axis (horizontally) using the slider.

My problem is that I need to keep in these rows about 10,000 (in peak) values ​​for each series so that usar can go left or right (using the slider) in the charts, which in total is about 80,000 values.

(A series stores up to 10,000 values, but the charts show 500 values ​​at a time, so the user can choose from which 500 out of 10,000 he wants to see the slider move)

I just have too many values ​​in the lists, which causes this:

RAM usage 1 RAM usage 2

, , , . JavaFX ?

: ( , excesive GC )

enter image description here

, , WeakReferenceQueue$ListEntry - node, ? .

JavaFX ? (?)

- , 4000 , ( 10000) .

, , .

+4

Source: https://habr.com/ru/post/1662532/


All Articles