現在、Quartzを使用していて、問題が発生しました。タスクを1つずつなど、ある順序で実行する必要があります。Quartzを使用して実装することは可能ですか?
3170 次
2 に答える
2
必要なのはタスク/ジョブチェーン機能です。
自分で実装することも、クォーツが提供するJobChainingJobListenerに依存することもできます。
簡単な例:
chainListener = new JobChainingJobListener( "myChainListener" );
chainListener.addJobChainLink( job1.getKey(), job2.getKey() );
sched.scheduleJob( job1, trigger );
sched.addJob( job2, true );
sched.addGlobalJobListener( chainListener );
sched.start();
あなたがそれをグーグルしようとすると、あなたはより多くの例/説明を得ることができると私は信じています。
少なくともそれはあなたにスタートを与えます。
幸運を。
于 2012-12-07T13:03:55.923 に答える
-2
はい、可能です。StatefulJobの使用を提案するつもりでしたが、その間非推奨になっていることがわかりました。彼らはDisallowConcurrentExecution
代わりに注釈を使うと言っているので、あなたはそれで行くことができます。どちらも、現在のジョブが終了する前に2番目のジョブが実行されるのを防ぎます。2番目のジョブの実行は、最初のジョブが終了するまで遅延されます。最初のものが終わった直後に、遅れたものが始まります。
于 2012-12-07T10:48:35.950 に答える