Java Swing定时器的负延迟

我刚刚在一些代码中遇到了这个问题,而且我很困惑。Java Swing定时器的负延迟

timer = new Timer(-10, new 

ActionListener()

{

//Do some stuff

});

摆动Timer对象中的负(或零)延迟的意义是什么?根据API,第一个事件立即被解雇,但是,-10和负-100之间的区别是什么?在我的代码中,它们看起来功能不同,但我无法完全确定它对Timer对象所做的更改。

回答:

javadoc说:“如果延迟小于或等于零,定时器会在启动后立即触发。”

所以答案是没有区别。您看到的明显差异可能仅仅是您的应用程序和/或运行时系统中的非确定性的后果。

随访

所以后来是每个后续事件前一后,立即解雇以及与任何明显的“时滞”系统只是产品?

延迟可能只是因为线程切换非确定性,以及Swing Timer使用一个线程执行所有计时器的事件侦听器的事实。

您应该可以阅读关于java.swing.Timerjava.util.Timer的javadoc以及它们链接的其他文档。

以上是 Java Swing定时器的负延迟 的全部内容, 来源链接: utcz.com/qa/261104.html

回到顶部