我想在 tkinter GUI 中使用调度程序作为秒表。我不确定这是否比使用后台线程更好,但我读到你不应该停止线程,而我想不断地启动和停止一个函数。
我在 Python 2.7 中做了一小段代码来测试调度程序,它似乎立即开始漂移。我希望它每秒增加一个计数器,但是一分钟后我就错了两秒(62 秒过去了,而不是 60 秒)。
这机器有关系吗?我的代码有问题吗?我应该使用另一个图书馆吗?
import sched, time
class Scheduler_Test:
def __init__(self):
self.counter = 0
self.time_increment = 1.0
self.end_time = 0.0
self.s = sched.scheduler(time.time, time.sleep)
self.start_time = time.time()
self.s.enter(self.time_increment, 1, self.do_something, (self.s,))
self.s.run() # run the event scheduler
#Simple test of printing out the computer time (sec) and count
def do_something(self, random_kwarg):
print "Time (sec):",time.time(),", count:", self.counter
self.event = self.s.enter(self.time_increment, 1, self.do_something, (random_kwarg,))
self.counter = self.counter + 1
Test = Scheduler_Test()
慕斯709654
冉冉说
相关分类