有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java中的连续监控客户端socket连接

我正在用java进行客户机-服务器编程。 当客户失去互联网连接时,我如何得到通知。这样我就可以为其他用户释放该端口

我收到的客户请求如下:

readerIn = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
readerIn.readLine();

所以在这里,我的代码无限期地等待客户端消息,而他已经失去了互联网连接。我需要在后台检查他的网络连接。请帮忙

谢谢


共 (2) 个答案

  1. # 1 楼答案

    一个选择是尝试NIO套接字编程。一个随机的快速教程here

    它有点复杂,但代码结构很健壮,您可以轻松地扩展它以满足您的需求

  2. # 2 楼答案

    不需要任何“背景”。只要用Socket.setSoTimeout(),设置一个合理的读取超时,并通过关闭套接字和退出线程来处理结果SocketTimeoutException