gpt4 book ai didi

java - 如何在 Java 代码中为数据报套接字设置重用地址选项?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:23:55 25 4
gpt4 key购买 nike

在我的应用程序中,将有一个线程始终在运行,并将发送或监听某个端口。

此应用程序在后台运行。有时在创建套接字时,我发现之前被同一个线程使用的端口没有在套接字的 close() 上释放。所以我试过这样

        dc = new DatagramSocket(inetAddr);
dc.setReuseAddress(true);

问题是,它也没有到达第二行。在第一行本身,我得到了 expcetion BindException: Address already in use

谁能帮我处理这种情况。

有什么办法可以释放端口吗?

感谢和问候,
S苏曼185

最佳答案

DatagramSocket(inetAddr) 绑定(bind)到端口。在绑定(bind)之前,您需要setReuseAddress(true)

要做到这一点...使用以下内容:

dc = new DatagramSocket(null);
dc.setReuseAddress(true);
dc.bind(inetAddr);

此构造函数使端口未绑定(bind)。

关于java - 如何在 Java 代码中为数据报套接字设置重用地址选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7832393/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com