def __call__ (self, now):
excutes = 0
for exetime, interval, func, args in self.q:
if exetime > now: break
excutes += 1
if args:
func (now, *args)
else:
func (now)
for i in range (excutes):
exetime, interval, func, args = self.q.pop (0)
#bisect.insort (self.q, (now + interval, interval, func, args))
self.q.append ((now + interval, interval, func, args))
self.q.sort (key = lambda x: x [0])
评论列表
文章目录