【问题标题】:How to detect socket Exception when internet connection is not there没有互联网连接时如何检测套接字异常
【发布时间】:2010-03-11 16:00:07
【问题描述】:

您好,我已经创建了一个套接字服务器和客户端程序。我的套接字服务器在不同的计算机上运行,​​并且在我的计算机中套接字客户端在那里。它工作正常 但问题是 如果客户端计算机从一开始就没有互联网连接,那么在我创建套接字连接期间会出现错误。

只有一次我将创建套接字连接,然后无限期地我试图将数据发送到服务器并且服务器完美地接收数据。但是在这两者之间,如果我在任何时候断开客户端互联网,那么我也无法获得任何异常,以便我可以知道我的互联网连接已断开或我的套接字连接不存在或我的套接字连接变为 null 。那么此时如何检测网络连接失败...

谢谢 苏尼尔·库马尔·萨胡

【问题讨论】:

    标签: java sockets


    【解决方案1】:

    您应该使用 setKeepAlive(true) 方法。然后你应该根据你的操作系统配置你的保持活动超时。我记得 Windows 有一个非常大的 keep-alive 超时,所以仅仅设置 keep-alive 选项是没有用的。

    另一种选择是自己在应用程序级别实现 keep-alive 功能,而不是依赖 TCP 层来执行此检查。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-04-08
      • 1970-01-01
      • 2012-01-17
      • 2011-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多