在多个工作线程中运行的Flask BackgroundScheduler

2024-10-02 22:27:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下代码

INTERVAL = 30  # in seconds
scheduler = BackgroundScheduler(
    executors={'default': ThreadPoolExecutor(1)})
scheduler.start()
scheduler.add_job(
    func=import_from_folder,
    trigger=IntervalTrigger(seconds=INTERVAL),
    id='importer_job',
    name='Importer',
    replace_existing=True)

# Shut down the scheduler when exiting the app
atexit.register(lambda: scheduler.shutdown())

我的应用程序有4个工人,这使得上面的调度程序运行4次。 有没有办法强制调度程序只在一个工作线程中运行??或者验证调度程序id是否已经在另一个worker中运行?在


Tags: the代码in程序iddefaultjob调度