首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AnimationTimer是否在自己的线程中运行?

AnimationTimer是否在自己的线程中运行?
EN

Stack Overflow用户
提问于 2015-10-11 16:16:08
回答 1查看 1.5K关注 0票数 4

JavaFX的AnimationTimer在启动时是否运行在一个单独的线程上?

我在调试器中运行了一个JavaFX应用程序,有和没有AnimationTimer,在这两种情况下都有6个线程在运行。另外,JavaDocs没有提到它实现Runnable

这意味着它不是在自己的线程中运行的,但从本质上讲,我认为它需要在自己的线程中运行,以确保它在足够正常的时间内运行。

如果它不是在自己的线程中运行,那么它只是运行在创建它的线程中吗?这是否意味着,如果我在AnimationTimerApplication's start()中创建UI元素,那么在计时器中修改UI元素是安全的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-11 19:24:41

JavaFX的AnimationTimer在启动时是否运行在一个单独的线程上?

不,它没有。它运行在JavaFX应用程序线程上。在每个帧中调用动画The的handle()方法,而AnimationTimer是活动的。通常,JavaFX试图保持60 fps的帧速率。

这是否意味着如果我在Application的start()中创建AnimationTimer,那么可以在计时器中修改UI元素吗?

是的,是这样的。因为它运行在JavaFX应用程序线程上,所以修改场景图元素是非常好的。只需确保您没有在handle()中做大量的计算。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33068953

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档