java.util.Socket类中的setKeepAlive()方法是什么意思

来源:百度知道 编辑:UC知道 时间:2024/06/23 14:35:26
下面是文档里的解释,说了跟没说一样,请问这个方法到底是什么意思
setKeepAlive
public void setKeepAlive(boolean on)
throws SocketException启用/禁用 SO_KEEPALIVE。

参数:
on - 是否开启保持活动状态的套接字。
抛出:
SocketException - 如果底层协议出现错误,例如 TCP 错误。
从以下版本开始:
1.3
另请参见:
getKeepAlive()

Keep-Alive 是Socket TCP底层的机制,就是定期检查一下两边的连接是不是断的。但定期时间很长,以Unix为例,通常是半小时。

如果不改Keep-Alive interval 的话,设置何不设置没啥区别。有时候跨路由器或交换机还不好使。。。