「update」メソッドを 5 分ごとに実行するようにスケジュールする次のクラスがあります。問題は、「更新」を一定回数実行したいということです。scheduler.shutdown()を使用すると、更新メソッドはもう実行されませんが、プログラムはまだ実行されているため、何もしていないと思います。
どうすれば完全に停止できますか?
static Runnable update = new Runnable() {
@Override
public void run() {
if (count >= MAX_UPDATES) {
scheduler.shutdown();
} else {
//Do something
count++;
}
}
}
public static void main(String[] args) {
ScheduledExecutorService scheduler = Executors.newSingleThreadScheduledExecutor();
scheduler.scheduleAtFixedRate(update, 0, 5, TimeUnit.MINUTES);
}