关闭与端口的连接,而不存在Java中的套接字绑定

时间:2014-02-22 17:29:45

标签: java networking tcp ping

我有一个小型客户端服务器应用程序,它涉及客户端在一组端口(90,6100,6200)上ping服务器。

我使用inet.isReachable(30000)来监控服务器是否响应客户端。

最后,我想确保在重新运行我的应用程序时,删除与这些端口的任何现有连接。

我该怎么做?

有没有办法在我使用InetAddress时自动关闭连接,这似乎没有任何方法可以终止与地址的现有连接?

3 个答案:

答案 0 :(得分:1)

在服务器响应isReachable或超时到期后,JVM将关闭连接,以先到者为准。

答案 1 :(得分:1)

我想确保当我重新运行我的应用程序时,将删除与这些端口的任何现有连接。

当您的应用程序退出时,连接无法保持打开状态 - 没有连接它们的过程。所以从这个意义上说,你不必担心在下次发布时关闭它们。

有没有办法在我使用InetAddress时自动关闭连接,这似乎没有任何方法来终止与地址的现有连接?

是 - 当响应isReachable时,或超时到期时(或发生其他错误),连接将关闭。仅创建InetAddress不会创建连接 - 它会根据需要自动创建和销毁它们以执行其功能。连接通常只是短暂的事情,除非你制作它们,否则不会保持开放状态。

答案 2 :(得分:1)

你的模糊问题的答案是,由于连接不能在它们创建的过程中存活,并且由于INetAddress" isReachable()不会泄漏连接,因此这里没有实际问题解决。