Как реализовать вызов асинхронных функций по расписанию в python?

Ниже приведен рабочий код на python для вызова синхронных функций по расписанию, но требуется вызывать их ассинхронный аналог. Как правильно реализовать вызов асинхронных функций по расписанию ? Какая оптимальная кроссплатформенная библиотека для этих задач на сегодняшний день?

import asyncio
import schedule
import logging
import logging.config
import json
import codecs
import sys

from datetime import datetime


def get_json_config():
    config_file = "log_config.json"
    logger.info("config file: %s", config_file)
    # We use codecs.open because it is equivalent to Python 3 open()
    with codecs.open(config_file, "r", encoding="utf-8") as fd:
        config = json.load(fd)
    return config


def job1m():
    logger.info(f"1min {datetime.now()}")


def job2m():
    logger.info(f"2min {datetime.now()}")


async def main():
    log_config = get_json_config()
    logging.config.dictConfig(log_config)
    logger = logging.getLogger()

    schedule.every().hour.at('00:00').do(job1m)
    schedule.every().minutes.at('02:00').do(job2m)

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


if __name__ == "__main__":
    logging.basicConfig()
    logger = logging.getLogger()

    asyncio.run(main())

Ответы (0 шт):