我想在每次操作后让线程休眠 1 小时。一种while循环运行。
问问题
191 次
2 回答
1
当您想以特定的时间间隔运行任务时,您应该使用java.util.Timer类来定期安排java.util.TimerTask的scheduleAtFixedRate 。
当你在完成任务后让线程休眠一小时,那么间隔实际上是一小时加上执行时间,而不是一小时。即使您的批处理任务只需要几秒钟,时间差也会随着时间的推移而累积。
这意味着随着时间的推移,您的任务运行的实际时间将变得越来越难以预测。我不知道批处理在可预测的时刻发生或每周精确执行 168 次对您的用例有多重要,但是当它很重要时,使用睡眠的解决方案会非常糟糕。
于 2013-03-18T10:31:07.343 回答
1
于 2013-03-18T10:34:49.077 回答