Python 计划,并行执行任务

Python schedule, do tasks in parallel

我已经使用 this:

安排了我的任务
if __name__ == '__main__':
    channel_crawler(priority=1)
    schedule.every(PRIORITY[1]["interval"]).minutes.do(channel_crawler, priority=1)

    schedule.every().day.at("17:30").do(distance_fixer)

    while True:
        schedule.run_pending()
        time.sleep(1)

channel_crawler 大约需要 5 minutes 到 运行,distance_fixer 大约需要 5 hours。当我 运行 我的代码同时 运行 宁 distance_fixer 时,时间表不会 运行 channel_crawler 每个 10 minutes。我怎样才能 运行 我的功能并行?

您可以对作业使用多处理,因此每个进程 运行 每个函数

def run_schedule():
    while True:
        schedule.run_pending()
        time.sleep(1)

def run_crawler_schedule():
    channel_crawler(priority=1)
    schedule.every(PRIORITY[1]["interval"]).minutes.do(channel_crawler, priority=1)
    run_schedule(schedule)

def run_fix():
    schedule.every().day.at("17:30").do(distance_fixer)
    run_schedule()


def run_job()
    p = Process(target=run_crawler_schedule)
    c = Process(target=run_fix)
    p.start()
    c.start()
    p.join()
    c.join()

if __name__ == "__main__":
    run_job()