Multithreading 在Jython2.7中,如何从主线程终止线程(等待用户输入)?

Multithreading 在Jython2.7中,如何从主线程终止线程(等待用户输入)?,multithreading,jython,jython-2.7,Multithreading,Jython,Jython 2.7,我有一个函数,它使用原始输入从用户那里获取输入,我的要求是为用户设置一个超时,如果用户没有及时提供任何输入,则应假定其他一些默认值 为了实现同样的功能,我为输入函数创建了一个新的线程(t1),并且从我的主线程我正在监视t1的完成情况,如果t1没有及时完成,我的主线程应该终止t1 我如何实现同样的目标 请注意,我已经尝试使用signal和select模块,但在jython中不起作用。甚至使用threading.thread.\u thread\u delete(t1)删除线程也不起作用 d

我有一个函数,它使用原始输入从用户那里获取输入,我的要求是为用户设置一个超时,如果用户没有及时提供任何输入,则应假定其他一些默认值

为了实现同样的功能,我为输入函数创建了一个新的线程(t1),并且从我的主线程我正在监视t1的完成情况,如果t1没有及时完成,我的主线程应该终止t1

我如何实现同样的目标

请注意,我已经尝试使用signal和select模块,但在jython中不起作用。甚至使用threading.thread.\u thread\u delete(t1)删除线程也不起作用

    def get_input():
        return raw_input("Enter: ") # blocked until user enters

    t1 = threading.Thread(target=get_input)
    t1.start()
    timeout = 10
    count = 0
    while count < timeout:
        count += 1
        if not t1.isAlive():
            break
        time.sleep(1)
    else:
        # how do I kill the t1 here?
def get_input():
返回原始输入(“输入:)#在用户输入之前被阻止
t1=线程。线程(目标=获取输入)
t1.start()
超时=10
计数=0
计数<超时时:
计数+=1
如果不是t1.isAlive():
打破
时间。睡眠(1)
其他:
#我如何在这里杀死t1?

您是否阅读了关于如何在Java中实现此功能的讨论?是的,很有帮助,谢谢!