Python'da zamanlanmış görevler için schedule modülünü kullanabilirsiniz.
import schedule
import time
# Yeni bir zaman aralığı belirliyoruz.
new_interval = 20
# İşlev: Belirli bir işi gerçekleştiren ve zaman aralığını güncelleyen fonksiyon
def job_function(job_name):
global new_interval
print(job_name + " çalıştı!")
# Zaman aralığını artırıyoruz.
new_interval += 1
print(new_interval)
# Güncellenmiş zaman aralığını ilgili işe atıyoruz.
job_list["job3"].interval = new_interval
# Çalıştırılacak işlerin adları
job_names = ["job1", "job2", "job3"]
# İş listesini oluşturuyoruz ve her bir işi plana ekliyoruz.
job_list = {}
for job_name in job_names:
job = schedule.every(5).seconds.do(job_function, job_name)
job_list[job_name] = job
# Planlanan işleri gösteriyoruz.
print(job_list)
# Planlanan işleri alıp ekrana yazdırıyoruz.
scheduled_jobs = schedule.get_jobs()
for job in scheduled_jobs:
print(job)
# Ana döngü
n = 0
while True:
# Planlanan işleri çalıştırıyoruz.
schedule.run_pending()
# 1 saniye bekleme
time.sleep(1)
# Güncellenmiş işleri gösteriyoruz.
scheduled_jobs = schedule.get_jobs()
for job in scheduled_jobs:
print(job)
# 11. turda "job2" işini iptal ediyoruz.
if n == 11:
cancelled_job = job_list["job2"]
schedule.cancel_job(cancelled_job)
n += 1
# Güncellenmiş işleri bir kez daha gösteriyoruz.
scheduled_jobs = schedule.get_jobs()
for job in scheduled_jobs:
print(job)