【发布时间】:2026-02-04 12:35:02
【问题描述】:
我需要在我的 java 项目中每 10 秒运行一次函数。 我希望它像一个无限循环,但不使用 while(true) 或 thread.sleep...
有什么想法吗?
【问题讨论】:
-
你自己有没有想过什么?也许你应该看看
Timer类。
标签: java multithreading infinite-loop intervals
我需要在我的 java 项目中每 10 秒运行一次函数。 我希望它像一个无限循环,但不使用 while(true) 或 thread.sleep...
有什么想法吗?
【问题讨论】:
Timer 类。
标签: java multithreading infinite-loop intervals
这或多或少是Making a Thread to Sleep for 30 minutes 的副本。这个问题提到了ScheduledExecutorService,我已经使用过并且非常满意。它有点重量级,所以 Timer 可能就是你所需要的。 Java Tutorial 有一个很好的例子来说明如何使用它。
【讨论】:
您可以将Timer 与方法一起使用:
Timer.scheduleAtFixedRate(TimerTask task, long delay, long period)
这里,task 是您要执行的任务(派生自 TimerTask),period 是执行两个任务之间的时间(以毫秒为单位),delay 是以毫秒为单位的延迟之前 每次执行。
【讨论】: