【发布时间】:2016-02-05 06:01:51
【问题描述】:
我有一个下面的方法,它将每隔一分钟从后台线程调用一次。
public void testMethod() {
// some other code
System.out.println("hello")
// some other code
}
现在每隔一分钟,hello 行就会被打印出来。有什么办法,第一次打印 hello 行,然后在后台线程调用 testMethod 后每半小时(不一定是半小时)打印一次。我不想使用任何执行程序或计时器类。
我只是不希望我的 hello 行每分钟打印一次。在开始时它应该打印一次,然后每 30-35 分钟就可以了。有没有其他方法可以在不使用 Timer 或 Executors 的情况下做到这一点?我们可以不使用当前时间并进行一些 mod 检查吗?
我希望 testMethod 中的所有其他代码每分钟执行一次,这样我就无法睡觉或任何事情。我只需要进行一些随机检查,我们可以通过它来决定是否打印 hello。我只是不想每分钟打印一次 hello。
【问题讨论】:
-
您希望程序何时停止打印?还是您希望它在没有结束时间的情况下运行?
-
是的,保持原样运行。每当我调用 testMethod 的后台线程停止时,它最终都会停止。
-
请解释为什么不能使用计时器。您描述的情况 screams 计时器;为什么要逆势而为?
-
@user1950349,我已根据您更新的问题和 cmets 更新了我的答案
标签: java date for-loop iteration