在长时间绘制图表的同时降低JavaFX应用程序的速度

在长时间绘制图表的同时降低JavaFX应用程序的速度,javafx,Javafx,我已经编写了JavaFX1.8应用程序,它可以在不同的选项卡中实时绘制多个图表。每个图表的数据定期接收,所有图表每秒大约有2个样本。一个图表存储2000个样本,另外4个图表存储大约500个样本。旧的样本正在从图表中删除 当应用程序工作约2小时时,CPU负载将增加到100%,应用程序速度将大大降低,因此无法与GUI交互。 当我将每个图表的样本数减少到100个时,应用程序的速度就没有问题了 在代码中,我将setAnimated和setCreateSymbols设置为false。为了向图表添加新样本,

我已经编写了JavaFX1.8应用程序,它可以在不同的选项卡中实时绘制多个图表。每个图表的数据定期接收,所有图表每秒大约有2个样本。一个图表存储2000个样本,另外4个图表存储大约500个样本。旧的样本正在从图表中删除

当应用程序工作约2小时时,CPU负载将增加到100%,应用程序速度将大大降低,因此无法与GUI交互。 当我将每个图表的样本数减少到100个时,应用程序的速度就没有问题了

在代码中,我将
setAnimated
setCreateSymbols
设置为false。为了向图表添加新样本,我使用了
getData().add(new XYChart.Data(“TIMESTAMP”,value)
。我还检查了始终使用
Platform.runLater
命令。 当我进行模拟时,在更短的时间内收到相同的数据,那么应用程序的速度会更快

有人能帮我解决减慢应用程序速度的问题吗

致以最良好的祝愿


Michael

如果没有代码,很难说什么。首先要做的是升级到最新版本的Java/JavaFX。例如,在最新版本的JavaFX中已经修复了大量内存泄漏问题。任何人花时间分析这样一个过时的软件版本都是没有意义的。