瓶服务器退出时线程仍然运行
正如标题所述,我创建了一个单独的线程来执行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
如果你使用线程模块,它应该是kwargs
以上是 瓶服务器退出时线程仍然运行 的全部内容, 来源链接: utcz.com/qa/262082.html