您可以使用
threading.Timer,但是它也可以安排一次性事件,类似于
.enter调度程序对象的方法。
将一次性调度程序转换为周期性调度程序的正常模式(使用任何语言)是使每个事件以指定的时间间隔重新进行调度。例如,使用时
sched,我不会像您正在使用的那样使用循环,而是像这样:
def periodic(scheduler, interval, action, actionargs=()): scheduler.enter(interval, 1, periodic, (scheduler, interval, action, actionargs)) action(*actionargs)
并通过电话发起整个“永久定期计划”
periodic(scheduler, 3600, query_rate_limit)
或者,我可以使用
threading.Timer代替
scheduler.enter,但是模式非常相似。
如果您需要更精细的变体(例如,在给定时间或在某些条件下停止定期重新计划),那么添加一些额外的参数就不太难了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)