我有一个套接字程序,它通过 PrintWriter(out.write(String str)) 发送文本数据,另一方面 BufferedReader(in.readLine()) 正在接收这个。
如果其中一个客户端断开连接,我想通过某种“超时”来保护我的程序,但我对其进行了测试,并且在工作期间,当客户端关闭时,服务器仍在发送数据并且没有中断也没有套接字关闭。
客户端也一样,我想断开连接并显示信息,例如“服务器不工作”。我该如何处理?
// Server
out = new PrintWriter( sock.getOutputStream());
while( true ) {
this.out.write("Hello");
this.out.flush();
}
// Client
in = new BufferedReader( new InputStreamReader( sock.getInputStream()));
while (true) {
in.readLine();
}