Запланируйте расчет ровно каждые 15 минут с использованием PythonPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Запланируйте расчет ровно каждые 15 минут с использованием Python

Сообщение Anonymous »

Я выполнил пример, показанный здесь.
Он работает как положено, но с небольшой проблемой. Если выполнение метода do_job() занимает больше минуты. Он ждет еще 1 минуту после завершения метода do_job() и планирует еще одно вычисление.
Но я хочу, чтобы время запускалось через 1 минуту от начала времени выполнения. Есть ли возможность это сделать?
РЕДАКТИРОВАТЬ

Код: Выделить всё

import schedule
import time

def job():
print("Process triggered at:", time.strftime("%Y-%m-%d %H:%M:%S"))
time.sleep(30)
print("Process ended at:", time.strftime("%Y-%m-%d %H:%M:%S"))

# Define the frequency (in seconds) at which the process should be triggered
frequency_seconds = 60  # Trigger every 60 seconds

# Schedule the job to run at the specified frequency
schedule.every(frequency_seconds).seconds.do(job)

# Main loop to keep the script running
while True:
schedule.run_pending()
time.sleep(1)  # Sleep for 1 second to avoid high CPU usage
В приведенном выше коде выходные данные выглядят следующим образом:
Процесс запущен в: 2024-03-25 06:57:23

Процесс завершился: 25 марта 2024 г., 06:57:53

Процесс запущен: 25 марта 2024 г. 06:58:54

Процесс завершился: 2024-03-25 06:59:24
Замечено, что следующий процесс запускается после первого процесс завершился. Разница во времени между временем окончания первого процесса и временем запуска второго процесса составляет 60 секунд.
Но я ожидаю, что разница во времени между временем запуска первого процесса и временем запуска второго процесса должна составлять 60 секунд. 60 секунд не должны рассчитываться от времени окончания процесса. job() должен вызываться ровно с интервалом в 60 секунд. Таким образом, ожидаемый результат будет выглядеть следующим образом:
Процесс запущен: 25 марта 2024 г., 06:57:23

Процесс завершен: 03.2024 г. 25 06:57:53

Процесс запущен: 25 марта 2024 г. 06:58:23

Процесс завершился: 25 марта 2024 г., 06:58:53

Подробнее здесь: https://stackoverflow.com/questions/782 ... ing-python
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Запланируйте выполнение задания каждые 5 секунд в Python (Kivy)
    Anonymous » » в форуме Python
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • System.Net.WebException: время ожидания операции истекло ровно 5 минут.
    Anonymous » » в форуме C#
    0 Ответы
    63 Просмотры
    Последнее сообщение Anonymous
  • Как позвонить в API ровно 00 и 30 минут каждый час в Swift?
    Anonymous » » в форуме IOS
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous
  • Как позвонить в API ровно 00 и 30 минут каждый час?
    Anonymous » » в форуме IOS
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Python Systemd Timer каждые 2,5 часа после часа, но он работает каждые 2 часа
    Anonymous » » в форуме Python
    0 Ответы
    49 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»