JavaFX runlater规范和性能

时间:2013-06-27 07:27:14

标签: performance javafx-2

我正在用JavaFX编写一个简单的平台游戏。由于我必须使用Platform.runLater()(用于添加/删除节点),因此我知道在包含大量对象的大阶段时可能存在性能问题 - >每秒更多runLater()次来电 性能最好的是:在一次Platform.runLater()调用中将要在JavaFX线程中完成的操作分组,或者在一次迭代中多次调用它?它对性能和UI响应能力有多大影响?
例如,如果我在屏幕上有20个字符,则以2发子弹/秒的速度射出子弹。这将产生40个用于添加节点的调用,40个用于移除节点的调用(击中表面的子弹将消失)以及多个用于其他效果的调用。如何定义哪种解决方案更好:
1.每秒拨打runLater() 100次。
2.每帧(例如30 fps)分组操作并每秒调用runLater() 30次 3.选择其他解决方案。我正在考虑“节点池”,它将保存舞台上的一些节点,但是不可见。这样可以将runLater()次调用量降至最低。

1 个答案:

答案 0 :(得分:0)

我不是百分百肯定但是每个人都说“JavaFx 2可以独立处理它的线程”...... 我从来没有做过足够大的程序来测试它,但我很确定JavaFx 2可以创建和删除(应用程序)线程,如果它需要更多/更少。