繁体   English   中英

在一定延迟后重新执行Java程序

[英]Re-executing a Java program after a certain delay

我希望在Eclipse中多次执行Java程序并且有一定的延迟。 我试图使用ScheduleAtFixedRate()在一段时间后重新执行该程序。 那么ScheduleAtFixedRate()ScheduledExecutorService之间的主要区别是什么?

使用后者有什么好处? 当计算机设置为睡眠模式时,它是否继续运行执行计划?

如果你的意思是.scheduleAtFixedRate() (请注意小s ),那么它是ScheduledExecutorService提供的方法 因此,使用任何一种都没有{dis,}优势。

您可以通过调用创建ScheduledExecutorService ,例如:

final ScheduledExecutorService service
    = Executors.newScheduledThreadPool(...);
service.scheduleAtFixedRate(...);

至于:

当计算机设置为睡眠模式时,它是否继续运行执行计划?

不是。操作系统让计算机进入睡眠状态,操作系统应该指示您在所需的时间唤醒。 运行Java程序是JVM的一个过程,最终由OS控制。

ScheduledExecutorService是定义任务执行程序行为的接口,ScheduleAtFixedRate()是此接口的方法,它期望实现类即执行程序以固定间隔执行输入任务。

当您的计算机进入睡眠状态或休眠状态时,将执行任何操作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM