私は架空のタイマーサービスを以下の安全性と正確性に関するいくつかの質問があります:私はここでやりたいすべてが、できるだけ早く何かをチェックすることですEJB自動タイマー、ロック、タイムアウトや長時間実行方法
@Singleton
public class MyTimerService {
@Schedule(second = "*", minute = "*", hour = "*", persistent = false)
public void checkTakingOneMinute() {
// code below takes a minute or so
}
}
を可能(この場合毎秒)。私がそれを理解しているので、メソッドcheckTakingOneMinute()
は前の呼び出しが終了するまで新しいチェックを開始しません。それは私が欲しいものですが、私はコンテナの内部について心配しています:ビジー状態のときにメソッドの実行をスキップするか、ロックされ、後続のロックタイムアウトを伴う一種のキューに入れられますか?
私の質問は、コード、ほとんどhttp://stackoverflow.com/questions/2691835/timer-service-in-ejb-3-1-schedule-calling-timeout-problemと同じであるように見えます書き直すと、あなたのソリューションはすごくうれしく思います。 – Osw
あなたはおそらく正しいでしょう。私はdups(私が答えて忘れてしまったものさえ)を検索するのではなく、パーソナライズされた/カスタマイズされた答えを書く傾向があります。 –