我有以下 Socket 服务器的代码,它从连接的 Socket 读取流。
try
{
ObjectInputStream in = new ObjectInputStream(client.getInputStream());
int count = 10;
while(count>0)
{
String msg = in.readObject().toString(); //Stucks here if this client is lost.
System.out.println("Client Says : "+msg);
count--;
}
in.close();
client.close();
}
catch(Exception ex)
{
ex.printStackTrace();
}
我有一个客户端程序,它与这个服务器连接,每秒发送一些字符串 10 次,服务器从套接字读取 10 次并打印消息,但是如果在这之间我杀死客户端程序,服务器就会冻结之间而不是抛出任何异常或任何东西。
我怎样才能检测到这种冻结情况?并使此循环无限迭代并打印客户端发送的任何内容,直到连接处于活动状态且稳定?