2016-11-09 4 views
1

私はAPSchedulerを使って5分ごとにpythonメソッドを実行しています。それは完璧に働いています。スケジュールされたジョブの反復を100に制限する必要があります.100回の反復の後、プロセスを終了する必要があります。私は参照文書をチェックしましたが、この機能を提供するオプションは見つかりませんでした。ジョブインスタンスの数は制御できますが、最大反復は制御できません。誰もそれについて考えているのですか?私はスケジュールされたジョブの繰り返し回数を取得する場合APSchedulerを100回だけ実行するように制限できますか?

from apscheduler.schedulers.blocking import BlockingScheduler 

def job(): 
    print "Decorated job" 

scheduler = BlockingScheduler() 
scheduler.add_job(job, 'interval', minutes=5) 
scheduler.start() 

OR その後、私はまた、以下のようなコード自体から実行中のジョブを削除することができます。

scheduler = BlockingScheduler() 
scheduler.add_job(job, 'interval', minutes=5, id='my_job_id') 

#iterationCount ?? 

if (iterationCount = 100): 
    scheduler.remove_job('my_job_id') 
    exit(0) 
scheduler.start() 

答えて

3

According to the documentationintervalトリガーは、ジョブの時間範囲を設定することができます:

あなたはスケジュールが実行さ の総時間を制限するstart_dateend_dateを使用することができます。

sched.add_job(job_function, 'interval', hours=2, start_date='2010-10-10 09:30:00', end_date='2014-06-15 11:00:00') 

これは正確に何をしたいではありませんが、それは、少なくとも、あなたが簡単に自分で計算することができ、終了日を設定することができます。

+0

お返事ありがとう@Leon。はい、間違いなく私はジョブの反復を制御することができます。 – Roopendra

関連する問題