下面的程序检查状态为0的 Job 表,然后将值更改为1,如果没有发现它会休眠 5 秒,然后检查新条目。该程序运行良好,但我担心我的解决方案,如果它可以不间断地运行多少天而没有任何问题。我正在考虑是否更好地使用侦听器来实现它。关于如何实施它的任何建议?多谢你们!
import time
from apps.models.joblist import Jobs
def start_jobs():
try:
j = Jobs.objects.filter(status=0)[0]
#do some job here
j.status = 1
j.save()
Jobs.objects.update()
start_jobs()
except Exception as error:
time.sleep(5)
start_jobs()