gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-05 06:08:02 24 4
gpt4 key购买 nike

我试图从 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())。

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

关于python - 如何使用 APScheduler 的 BackgroundScheduler() 停止/终止运行 python 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65204671/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com