javaの定期タスクで重複実行を防ぐには、

Javaのスケジュールタスクでは、タスクの完了前にタスクの再実行を停止したい場合があります。タスクの再実行を停止するには、いくつかの方法があります。

  1. タイマー
  2. 予定
  3. 遅延
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
// 任务代码
}
}, 0);
  1. スケジュール実行サービス
  2. スケジュールされた実行サービス
  3. 予定
  4. 初期遅延
ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor();
executor.schedule(new Runnable() {
@Override
public void run() {
// 任务代码
}
}, 0, TimeUnit.SECONDS);
  1. アトミックboolean
  2. アトミックブール
private AtomicBoolean isTaskExecuted = new AtomicBoolean(false);
public void scheduledTask() {
if (isTaskExecuted.compareAndSet(false, true)) {
// 任务代码
}
}

時間割タスクの重複実行を防ぐ方法は上記の通りで、あなたのニーズに応じて適切な方法を選択して使用できます。

bannerAds