删除线程计时器类?

时间:2012-04-18 21:07:47

标签: python multithreading timer

想象一下,我有这段代码(还没有编写实际的计时器):

class Timer(threading.Thread):
    def __init__(self, seconds):
        self.runTime = seconds
        threading.Thread.__init__(self)
    def run(self):
        time.sleep(self.runTime)
        #do some other function
        print 'Finished'
t = Timer(60)
t.start()

一旦run()方法运行完毕,有没有办法停止线程,并删除类实例?

1 个答案:

答案 0 :(得分:3)

run()方法是在线程中运行的所有内容,因此当它完成后,任何内容都不再运行。然后t.is_alive()将返回False。然后,您可以使用del t删除该实例,但这只会删除您对它的引用。实际删除将在一段时间后由垃圾收集器完成。