【问题标题】:Java Socket ReuseJava 套接字重用
【发布时间】:2015-05-16 00:52:18
【问题描述】:

成员 EJP 评论了我的评论 here,说您无法重用连接失败的 Socket。我非常尊重 EJP,但是,我的回应是,我觉得这太棒了……如果这是真的,它似乎对任何使用 Sockets 的 Java 应用程序的生命周期施加了严格的限制——最终你会用完了,对吧?

任何人都可以澄清情况或指出解决方法吗?

【问题讨论】:

    标签: java sockets


    【解决方案1】:

    我已经想通了:EJP,你说的完全正确

    问题在于Socket.close(),Java Socket 对象在此之后无法重用,并且由于关闭 Input 或 OutputStream 将调用 close(根据 Javadocs),这是该对象的终点。

    但是,似乎绝对有可能创建一个新的 Socket 对象并将 bind 它添加到同一个本机套接字。本机套接字应该有希望被 Java 套接字释放,并且可以重用,或者?

    感谢大家的关注

    【讨论】:

    • 我认为您的错误是您将“套接字”定义为“端口”的同义词,这可能不正确。此外,他的评论引用了 Java 类 Socket 的实例,而不是抽象套接字。
    • @JamesKPolk 这是很久以前的事了,所以我不记得我在想什么。但我认为你推测的我的误解可能是我的误解
    • 你可能想知道我是怎么到这里的。我想知道 EJP 的帐户发生了什么事,结果到了这里。
    猜你喜欢
    • 2013-04-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-07
    • 2018-09-09
    • 1970-01-01
    • 1970-01-01
    • 2013-02-02
    相关资源
    最近更新 更多