Jython如何从线程中停止脚本?

时间:2009-11-25 18:22:46

标签: multithreading jython

我正在寻找一些将从线程运行但可以杀死主脚本的退出代码。它在Jython中,但我不能使用java.lang.System.exit()因为我仍然想要运行的Java应用程序,并且sys.exit()不起作用。理想情况下,我想输出一条消息,然后退出。 我的代码使用threading.Timer函数在一段时间后运行一个函数。在这里,我用它来结束一个执行时间超过1秒的for循环。这是我的代码:

import threading
def exitFunct():
    #exit code here
t = threading.Timer(1.0, exitFunct)
t.start()
for i in range(1, 2000):
    print i

2 个答案:

答案 0 :(得分:1)

好吧,如果必须,你可以致电mainThread.stop()。但你不应该。

This article解释了为什么你要做的事情被认为是个坏主意。

答案 1 :(得分:0)

如果您想终止当前进程并且不关心刷新IO缓冲区或重置终端,则可以使用os._exit()

我不知道他们为什么这么难。