发布时间:2022-08-09 文章分类:编程知识 投稿人:赵颖 字号: 默认 | | 超大 打印

import threading

classX(threading.Thread):
def__init__(self):
threading.Thread.__init__(self)
self.flag =1

defrun(self):
whileself.flag ==1:
sleep(300)
...

defrun(self):
self.last = time.time()
whileself.flag ==1:
Now = time.time()
ifNow - self.last >300:
self.last = Now
...

defrun(self):
self.last = time.time()
whileself.flag ==1:
sleep(1)
Now = time.time()
ifNow - self.last >300:
self.last = Now
...

import threading

classX(threading.Thread):
def__init__(self):
threading.Thread.__init__(self)
self.flag =1
self.cond = threading.Condition()

defrun(self):
self.cond.acquire()
self.condition.wait(300)
whileself.flag ==1:
...
self.cond.release()
self.cond.acquire()
self.condition.wait(300)

...
x.flag =0
x.cond.acquire()
x.cond.notify()
x.cond.release()