Sat*_*ish 1 java delayed-execution
我需要运行以下代码只有60秒
代码工作完美,延迟2秒,每5秒重复一次.
但在这里我只需要60秒就可以完成这一切
int delay = 3000; // delay for 3 sec.
int period = 5000; // repeat every 5 sec.
Timer timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {
public void run() {
System.out.println("Would it run?"+System.currentTimeMillis());
}
}, delay, period);
Run Code Online (Sandbox Code Playgroud)
请告诉我怎么做?
您只需使用以下命令即可ScheduledExecutorService
:
ScheduledFuture
final ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
final Runnable task = new Runnable() {
public void run() {
System.out.println("Would it run?"+System.currentTimeMillis());
}
};
final ScheduledFuture<?> handle =
scheduler.scheduleAtFixedRate(task, 2, 5, TimeUnit.SECONDS);
scheduler.schedule(new Runnable() {
public void run() { handle.cancel(true); }
}, 60, SECONDS);
Run Code Online (Sandbox Code Playgroud)