1分毎にスレッドを動かしたいと思ったとき、どうしたら良いのか途方に暮れた。
その土台に、crontabモジュールを使えば良いことが分かった。
crontabは、あるタイミングまでの残り時間を計算してくれる。
インストールは次のコマンドで。
$ pip install crontab
サンプルはこんな感じ。
==============================
from crontab import CronTab
import datetime
# 毎1分毎にクーロンを設定する。
entry = CronTab('* * * * *')
# 現在時刻を表示
print(datetime.datetime.now())
# 次のクーロンが動作するまでの残り時間を表示する。
print(entry.next())
==============================
entryでインスタンス化されたcrontabに対して、entry.next()で次回クローンが動作するまでの残り時間を取得することができる。
実行結果は次のような感じ。
2016-11-06 14:08:38.204069
21.79585
次回クローンが動作する2016-11-06 14:09:00まで残り21.79585秒であることが分かる。