如何停止/终止使用APScheduler的BackgroundScheduler()运行python脚本



我正试图从foo((函数内部停止while循环执行。我尝试过exit((/sys.exit,但没有成功。如何从函数内部完全停止程序的执行?

from apscheduler.schedulers.background import BackgroundScheduler
from datetime import datetime, timedelta
import time
import sys
def foo(stop = False):
print('Function foo executed')
if stop: 
sys.exit
scheduler = BackgroundScheduler() 
dd = datetime.now() + timedelta(seconds=10)
scheduler.add_job(foo, 'date', run_date=dd, args=[True])
scheduler.start()
while True:
print('Inside the loop')
time.sleep(2)

使用psutil

import psutil
psutil.Process().terminate()

根据文档,psutil.Process()如果省略PID,则使用当前进程PID(os.getpid(((。

请注意,terminate将离开,退出代码为0。如果您想要其他退出代码,可以使用send_signal()甚至kill()

相关内容

  • 没有找到相关文章

最新更新