java - 如何设置ServerSocket等待Client Socket连接的时间限制

标签 java sockets networking timer timertask

我正在使用套接字进行 Java 编程,并面临下面提到的问题。

我编写了一个服务器程序,它将纯文本发送到客户端。当我启动服务器时,服务器程序会等待很长时间才能连接客户端套接字。但我希望服务器程序只等待指定时间比如5分钟,然后向用户报告客户端在指定时间内未连接。 我无法理解如何实现它。我已经了解了 Timer 和 TimerTask 类,但它有点令人困惑。

最佳答案

使用ServerSocket.setSoTimeout(int timeOut)等待客户。如果需要无限等待,请将其设置为0

注意:Java 文档说:

The option must be enabled prior to entering the blocking operation to have effect.

关于java - 如何设置ServerSocket等待Client Socket连接的时间限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21934839/

相关文章:

java - 将方法传递给变量

c - 如何将服务器中的一些数据写入连接到我的服务器的所有客户端?

java - R 关闭后 h2o java 服务器仍保留在内存中

java - 此元素没有附加源,并且在附加的 Javadoc 中找不到 Javadoc

Android 套接字和异步任务

Linux。 SOL_NETLINK 未定义

Python 程序意外终止

c - 网络拓扑结构

具有多个 VLAN 的 Linux 部分可达

java - JodaTime 格式错误 - 不同机器上的格式不同