假设我有两个线程正在运行。线程#1读取System.in,如下所示:
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s;
while (true) {
s=br.readLine();
if(s!=null)
doSomethingWithThat(s);
}
}
我还有Thread #2
执行某些操作,其中包括需要在某些事情发生时读取System.in
(通常不会由Thread #1
触发。)
是否有可能以某种方式中断Thread #1
,以便br.readLine()
return null
和#Thread #2
可以读取System.in
?
答案 0 :(得分:0)
在readLine()&之前添加了这个做了诀窍
while(System.in.available()<=0 || yield)
Sleep.millis(420);