【发布时间】:2014-12-04 05:08:59
【问题描述】:
我有一个从两个不同来源获取输入的多线程控制台应用程序。一种是用户在控制台中输入,另一种是网络。我使用 BufferedReader.readline() 从用户那里获取输入并阻止,这很好,除非我在等待时收到网络输入。在这种情况下,我需要通过取消 readline() 来解除对用户线程的阻塞。
我认为最好的取消方法是关闭 System.in 并使 readline() 抛出异常。在那之后,虽然我需要重新打开它。这可能吗?
【问题讨论】:
标签: java multithreading io console