我写了一个工具,它正在执行一些步骤 1..n 一些步骤需要用户交互(从 System.in 中读取) 其他步骤循环直到满足某些条件或用户按下某个键(当用户按下键时循环应该结束,主要应该进入下一步)
我为那些提供键循环中断的步骤所做的是生成一个线程,该线程从 System.in 读取 -> 如果按下键,则此线程然后中断该步骤。这工作正常,但是当循环条件得到满足时,这个关键的侦听器线程将阻塞 System.in,因此需要用户交互的下一步将受到影响
我的关键监听线程的运行基本上是:
new InputStreamReader(System.in).read() > 0;
当然是哪些块,所以我正在寻找解决此问题的方法