qshinoの日記

Powershell関係と徒然なこと

python 定時作業

定時作業

signalに呼んでもらう。

import time,  signal

def foo( signum, frame ):
    print(time.time())

if ( '__main__' == __name__):

    interval_1st = 0.1 # seconds
    interval_after1st = 0.1 # seconds

    signal.signal(signal.SIGALRM, foo)
    signal.setitimer(signal.ITIMER_REAL, interval_1st, interval_after1st) 

  it = 10

    while ( it > 0 ):
        signal.pause() # until signal
        it-=1


    # Stop timer
    signal.setitimer(signal.ITIMER_REAL, 0)
    signal.signal( signal.SIGALRM, sgnal.SIG_DFL )

OS

os機能を使うため、フル機能はunix系OSのみ対応。 windowsは一部対応。

ref

https://docs.python.org/ja/3/library/signal.html

https://qiita.com/miminashi/items/50a4f0906ab8f18b105d