1. 程式人生 > >python 定時執行函式方法

python 定時執行函式方法

一、Timer類基本介紹
這個類表示一個動作應該在一個特定的時間之後執行 — 也就是一個計時器。Timer是Thread的子類, 因此也可以使用函式建立自定義執行緒。
class threading.Timer(interval, function, args=[], kwargs={}) 
建立一個timer,在interval秒過去之後,它將以引數args和關鍵字引數kwargs執行function 。

二、簡單例子 # coding: utf-8 from threading import Timer def fun():     print "hello, world" if __name__=='__main__':     t = Timer(5.0, fun)     t.start() # 5秒後, "hello, world"將被列印

三、取消執行緒執行
Timers通過呼叫它們的start()方法作為執行緒啟動。timer可以通過呼叫cancel()方法(在它的動作開始之前)停止。timer在執行它的動作之前等待的時間間隔可能與使用者指定的時間間隔不完全相同。
cancel() 
停止timer,並取消timer動作的執行。這隻在timer仍然處於等待階段時才工作。
# coding: utf-8
from threading import Timer

def fun():
    print "hello, world"

if __name__=='__main__':
    t = Timer(5.0, fun)
    t.start() # 開始執行執行緒,但是不會列印"hello, world"
    t.cancel() # 因為cancel取消了執行緒的執行,所以fun()函式不會被執行