Cara Melaksanakan Fungsi Berulang Kali Tanpa Cron
Penggemar Python sering menghadapi cabaran untuk melaksanakan fungsi secara berterusan pada selang waktu tertentu tanpa memerlukan tetapan cron yang kompleks. Satu pendekatan mudah melibatkan penggunaan gelung while yang mudah.
while True: # Code executed here time.sleep(60)
Kod ini nampaknya berfungsi untuk melaksanakan fungsi secara berterusan setiap 60 saat. Walau bagaimanapun, kemungkinan perangkap wujud dalam pendekatan ini. Memandangkan gelung terus berjalan tanpa henti, terdapat risiko keletihan sumber, menyebabkan prestasi lembap atau sistem ranap.
Untuk menyelesaikan isu ini dengan anggun, pertimbangkan untuk menggunakan penjadual acara seperti modul jadual dalam Python.
import sched, time def do_something(scheduler): # schedule the next call first scheduler.enter(60, 1, do_something, (scheduler,)) print("Doing stuff...") # then do your stuff my_scheduler = sched.scheduler(time.time, time.sleep) my_scheduler.enter(60, 1, do_something, (my_scheduler,)) my_scheduler.run()
Modul jadual membolehkan penjadualan tugasan dengan kawalan rumit ke atas masa pelaksanaannya. Dalam senario ini, do_something() berfungsi sebagai fungsi panggil balik yang menjadualkan semula dirinya setiap 60 saat dan pada masa yang sama melaksanakan tugas yang dimaksudkan. Mekanisme ini memastikan pelaksanaan berterusan fungsi pada selang waktu tertentu tanpa menghalang tindak balas program.
Pada dasarnya, memanfaatkan penjadual acara menyediakan penyelesaian yang lebih mantap dan cekap sumber untuk melaksanakan fungsi dalam Python secara berulang kali tanpa had masa. gelung.
Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Fungsi Python Berulang kali Tanpa Kerja Cron atau Keletihan Sumber?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!