我有一个问题,
我的客户端需要在特定时间内从服务器监听,如果在这段时间内没有收到服务器的回复,它必须关闭连接。
我在客户端有两个线程,一个在时间到期后将布尔变量更新为 false,另一个线程检查来自服务器的 msg 以及计时器。
我的代码是这样的:
while(true){
if(l=is.readLine().equals(msg))
{
// do processing
break;
}
if(timer)
break;
}
所以我的while循环不断检查味精和计时器。问题是 is.readline() 正在阻止呼叫,并且无限期地等待来自服务器的消息。
我该怎么做?
我试过了
if(l=is.readLine()!=null and l.equals(msg))
但没有用。