1樓:
deffun_timer
():logging
.info
("rebuild special timeline local cache by Timer"
)global
timer
global
timer_running
# do_something()
iftimer_running
:timer
.cancel
()# 這步可能不是必須的
timer
=threading
.Timer(5
,fun_timer
)timer
.start
()else
:timer
.cancel
()# 啟動時先載入一遍,防止取到空資料
rebuild_local_cache
()timer_running
=True
timer
=threading
.Timer(5
,fun_timer
)timer
.start
()old_sig_handler
=signal
.getsignal
(signal
.SIGINT
)def
_handler
(signum
,frame
):global
timer
global
timer_running
logging
.info
("receive sig: {}, cancel timer"
.format
(signum
))timer_running
=False
ifsignum
==signal
.SIGINT
:old_sig_handler
(signum
,frame
)# 收到訊號後取消定時器,shutdown gracefullysignal
.signal
(signal
.SIGINT
,_handler
)注意幾個要點:
cancel 貌似不支援跨執行緒,所以得用變數去標識程序是否結束。
註冊 SIGINT 的時候,把之前的 handler 記得儲存下來一塊執行,不然其他邏輯,例如 web 伺服器的時間迴圈退出就會出現問題 。
2樓:
呼叫Timer 的cancel()方法就可以了,
文件:17.1. threading - Thread-based parallelism - Python 3.6.0 documentation
rapper如何取藝名?
牛寶歇會吧 從比較代表性的歌裡面摘,比如馮笑微博名馮塔斯,他和ijapa合過天生瘋塔兒,說他和ijapa是兩個瘋塔兒,諧音馮塔斯 fac d12forever 傑杰傑夫 404紅花會彈殼,你也可以取乙個名字叫彈殼 Tan Qiao 來自404紅花會的彈殼,而你是來自121黃花菜的Tan Qiao。蹭...
如何分別理解佛法中見取與我語取 ?
取 Upadana 四取 欲取 執取物件的慾望 二。見取 執取於某些見解 邪見。三。戒禁取 執取於某些不合理的戒律或忌諱 四。我語取 執著自我,而起我見 我慢 樹長歪了,也可以說長斜了,塔歪了,說成斜塔,路不平,有斜坡,紙箱疊歪了,斜了。用 斜 來形容一切不正的,歪的物體,器具。用 邪 來形容不正的...
AirPods和華為flypods如何取捨?
鍊金術士 flypods音效還行但airpods還是略勝一籌加上flypods延時手勢感應速度不敢恭維還有一點,flypods手勢只有兩個功能,不能切歌和上一首個人感覺flypods手勢有點彆扭 僅代表個人感受 如果預算夠的話還是用airpods吧。 魯迅 瀉藥。表示不貶低任何產品,但是AirPod...