2016-08-23 12 views
1

私は、スケジューラアノテーション付きのSpring Bootを使用する単純なジョブを実行しますが、正常に実行されますが、どのように停止または停止できますか?@Scheduledアノテーションを使用する停止タイマー

@Component 
public class UpAndDown { 
    @Scheduled(fixedRate = 2000) 
    public void upAndDown() {} 
} 
+0

停止または一時停止したい条件では? –

答えて

0

最も簡単な方法は、この機能が有効かどうかを追跡するフラグを設定することです。次に、あなたの方法でそのフラグをチェックしてください。

@Component 
public class UpAndDown { 
    private boolean triggerEnabled = true; 

    public void setTriggerEnabled(boolean triggerEnabled) { 
     this.triggerEnabled = triggerEnabled; 
    } 

    @Scheduled(fixedRate = 2000) 
    public void upAndDown() { 
     if(triggerEnabled) { 
      doTheStuff(); 
     } 
    } 
} 

これは明らかにタイマーを停止することはありませんが、それは効果的インフラ豆をいじってなくて、あなたはそれが何をしたいのかを行います。

関連する問題