[英]Thread still runs when flask server exits
正如標題所描述的,我創建了一個單獨的線程來在Flask
完成較長的任務。
import schedule
import time
start_time = time.time()
def job():
print("I'm working..." + str(time.time() - start_time))
def run_schedule():
while True:
schedule.run_pending()
time.sleep(1)
當我按Ctrl + c
終止服務器時,該線程仍會prints
。 服務器退出時如何停止線程?
您可能需要將線程設置為daemon 。
線程將一直運行,直到其自身結束或被明確殺死。
守護程序線程在相同的條件下運行,並且如果至少有一個其他非守護程序線程正在運行:這意味着,如果您結束主線程並且沒有其他線程在運行,則所有守護程序線程也將終止。
如果您正在使用線程模塊,則可以通過更改其布爾值來將線程設置為守護進程:
import threading
your_thread.daemon = True
如果您使用的是線程模塊,則應該是其中之一
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.