Я использовал библиотеку расписания для планирования функции каждые X секунд:
Хочется, чтобы я запускал эту функцию в отдельном потоке. Я нашел это в документации о том, как запустить планировщик в отдельном потоке, но я не понял, что он сделал.
Есть ли кто-нибудь, кто может объяснить мне, как это сделать?
Обновление:
Это то, что я пробовал:
def post_to_db_in_new_thread():
schedule.every(15).seconds.do(save_db)
t1 = threading.Thread(target=post_to_db_in_new_thread, args=[])
t1.start()
Поэтому я отвечу на свой вопрос.
import threading
import time
import schedule
def run_threaded(job_func):
job_thread = threading.Thread(target=job_func)
job_thread.start()
schedule.every(15).seconds.do(run_threaded, save_db)
while 1:
schedule.run_pending()
time.sleep(1)