[英]Socket Idle timeout Exception In java
基本上是套接字编程的新手。 我想知道如果在指定的时间间隔内保持空闲状态,如何关闭套接字。 我在网上搜索了一下,发现该函数用于在指定间隔后关闭套接字。 但是在我的情况下,我只想在空闲状态超过指定时间间隔时关闭套接字
我在网上搜索了此内容
为什么? Javadoc存在。 无需搜索。
我发现了用于在指定间隔后关闭套接字的函数
没有这种方法。
我看到了
setSoTimeOut(2000)
函数,该函数在指定的时间间隔后关闭套接字
不,不是。 它根本不会关闭套接字,并且如果在超时时间内没有数据到达,它将导致读取方法抛出SocketTimeoutException
。
但是我只想在套接字在指定间隔内保持空闲状态时关闭
Socket.setSoTimeout()
正是您所需要的。
客户端建立与服务器的连接,然后稍后,客户端在执行所需的任务后关闭其一侧的套接字连接,并在下次ping时创建新的连接,因为我的服务器不关闭连接,它一直在听那个客户
换句话说,您的服务器将忽略套接字上的流结束。 不要那样做 如果从read方法获得流的结尾,请关闭套接字。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.