繁体   English   中英

Java中的套接字空闲超时异常

[英]Socket Idle timeout Exception In java

基本上是套接字编程的新手。 我想知道如果在指定的时间间隔内保持空闲状态,如何关闭套接字。 我在网上搜索了一下,发现该函数用于在指定间隔后关闭套接字。 但是在我的情况下,我只想在空闲状态超过指定时间间隔时关闭套接字

我在网上搜索了此内容

为什么? Javadoc存在。 无需搜索。

我发现了用于在指定间隔后关闭套接字的函数

没有这种方法。

我看到了setSoTimeOut(2000)函数,该函数在指定的时间间隔后关闭套接字

不,不是。 它根本不会关闭套接字,并且如果在超时时间内没有数据到达,它将导致读取方法抛出SocketTimeoutException

但是我只想在套接字在指定间隔内保持空闲状态时关闭

Socket.setSoTimeout()正是您所需要的。

客户端建立与服务器的连接,然后稍后,客户端在执行所需的任务后关闭其一侧的套接字连接,并在下次ping时创建新的连接,因为我的服务器不关闭连接,它一直在听那个客户

换句话说,您的服务器将忽略套接字上的流结束。 不要那样做 如果从read方法获得流的结尾,请关闭套接字。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM