如何退出一个运行线程的Python程序?
问题描述:
我正在写一些简单的代码,我使用Pygame来绘制图形,并且我有一个线程可以绘制一切。当我调用sys.exit()或只是按Ctrl + C时,主程序退出,但线程似乎仍然活着。我想我需要关闭它。我怎么做?如何退出一个运行线程的Python程序?
例子:
import threading
class Bla(threading.Thread):
def run(self):
print "I draw here"
Bla().start()
while True:
if user_wants_to_end:
sys.exit()
当我确实想退出程序不会退出!我如何关闭线程?
“Simple code”和“thread”在同一句中? Tsk,tsk。不要使用多线程,因为它似乎是个好主意,在实际需要时使用它。 –
这看起来像是重复的;你可能想看看[这里](http://*.com/questions/323972/is-there-any-way-to-kill-a-thread-in-python/325528#325528)寻求帮助。 – myusuf3
这个程序并不完全显示你的问题,因为它退出的速度很快。但是,如果在run()方法中添加诸如'time.sleep(1000000)'之类的东西,则可以说明问题。 – EOL