我听说javax.swing
只有在我实际构建一个Swing GUI
. 我想使用javax.swing.Timer
withoutGUI
为了创建计时器循环。这是否意味着没有 GUI 我应该使用java.util.Timer
?
javax.swing.Timer
不使用会不会有很大的错误GUI
?它会导致一些性能错误或减速吗?
有哪些方法可以创建被动运行或不停止主线程的循环?
提前致谢!
我听说javax.swing
只有在我实际构建一个Swing GUI
. 我想使用javax.swing.Timer
withoutGUI
为了创建计时器循环。这是否意味着没有 GUI 我应该使用java.util.Timer
?
javax.swing.Timer
不使用会不会有很大的错误GUI
?它会导致一些性能错误或减速吗?
有哪些方法可以创建被动运行或不停止主线程的循环?
提前致谢!
在没有 GUI 的情况下使用 javax.swing.Timer 是不是很大的错误?它会导致一些性能错误或减速吗?
不,这不是一个大错误。但是,如果应用程序中没有运行线程,则不会触发ActionEvents
与 关联的。如果应用程序中没有线程正在运行,则程序将正常退出而不执行相关方法。但是 GUI 会导致 JVM 挂起并让 JVM执行该方法。如果您不使用 GUI,请确保应用程序中正在运行一些线程。javax.swing.Timer
non-daemon
non-daemon
javax.swing.Timer
actionPerformed
Timer
actionPerformed
non-daemon
有哪些方法可以创建被动运行或不停止主线程的循环?
您可以java.util.Timer
用于此目的。但是现在java.util.concurrent
已经提供了很多丰富的 API 集来执行并发任务。因此,现在您应该ScheduledExecutorService
为此使用 API。
是的,不建议这样做,因为它是您需要的另一个依赖项。
您应该尽量减少依赖项。如果java.util.Timer
是满足您需求的东西,您绝对应该选择这个。