时间事件被发送了?

时间:2015-12-20 18:17:45

标签: javafx

在JavaFx中,有没有可靠的方法来了解事件发布的时间?

因为这个问题对于stackoverflow来说太短了,所以我详细说明了什么。在我认为是javafx的异步事件系统中,事件会在队列中发布,然后在后期处理。发布和处理之间的时间是未知的,尽管估计它很小。然而,无法保证这一次确实很小。因此,我真的想知道是否可以知道发布活动的时间。例如:当用户实际点击按钮时(而不是程序看到它时)。

1 个答案:

答案 0 :(得分:1)

简答:不。

根据JavaFX Architecture,它使用本机事件队列来捕获和批处理所有事件。通过捕获它被理解为在那个时刻生成事件(用户点击按钮)。考虑到批处理,我们已经丢失了有关事件生成时间的信息(除非JavaFX在内部保留该信息,您可以检查com.sun.javafx包以获取更低级别的详细信息)。每1/60秒就有一个预定的脉冲事件。在脉冲事件期间,所有其他JavaFX事件(如MouseEvent等)都是通过普通的JavaFX事件调度机制触发的。此时,您的应用程序将从JavaFX收到发生事件的通知。因此,在理想的世界中,发布事件的时间与处理事件的时间之间的差异应该是< 0.0166(6)秒。

相关问题