Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ApScheduler python未按计划运行_Python_Apscheduler - Fatal编程技术网

ApScheduler python未按计划运行

ApScheduler python未按计划运行,python,apscheduler,Python,Apscheduler,job_函数甚至没有执行一次,即使我等待了10多分钟 from apscheduler.schedulers.background import BackgroundScheduler import send_mail def job_function(): print("Hello World") send_mail('abc@test.com') sched = BackgroundScheduler() sched.add_job(job_function, 'i

job_函数甚至没有执行一次,即使我等待了10多分钟

from apscheduler.schedulers.background import BackgroundScheduler
import send_mail


def job_function():
    print("Hello World")

    send_mail('abc@test.com')

sched = BackgroundScheduler()

sched.add_job(job_function, 'interval', minutes=1)

sched.start()

基于此代码,并且仅基于此代码,问题似乎是程序在达到时间限制之前终止

尝试在程序末尾添加此无限循环,以防止其退出:

while True:
    time.sleep(1000)

然后用CTRL+C终止程序。

通过编辑非注释在问题本身中描述您的问题。我等了大约5分钟,但调用的函数没有执行,如果我在job_函数外调用该函数,它将成功执行。它现在使用while True循环执行,但一旦我按下Ctrl+C键,进程就会终止。我想我必须用nohup运行python命令。但是使用这个库中的BackgroundScheduler()模块有什么意义呢?如果我必须使用while True循环来运行进程,并显式地将其作为后台进程来运行,那就没有意义了。你把后台线程和后台进程搞混了。apscheduler是应用程序任务的进程内计划程序。如果您不想生成为您管理后台任务线程的进程,则需要查看Huey或芹菜。你没有在问题中解释你的用例为什么要这样做,所以不可能知道什么是最好的方法。我想要一个简单的计划程序每天发送一次邮件最简单的一个是你使用OS计划程序(UNIX上的Cron,Windows上的Windows thing)每天执行一次脚本