关于 JAVA udp datagramchannel 的使用

qq_36739932 2016-11-17 03:46:24
本人程序里面需要调用一个使用UDP协议发送数据的类,由于调用datagramchannel 里面是强制分配了端口,第一次能调用成功,第二次就出错了,端口没法释放出来,

int po = 8868;
try {
my_udp = new MyUdpSocket(po);
} catch (Exception ex) {
ex.printStackTrace();
}

public MyUdpSocket(int port) throws IOException {
channel=DatagramChannel.open();
selector=Selector.open();
try{
//调整此通道为非阻塞模式
channel.configureBlocking(false);
//获取与套接字通道关联的套接字,并将该套接字绑定到本机指定端口
channel.socket().bind(new InetSocketAddress(port));
//为通道选择器注册通道,并指定操作的选择键集
channel.register(selector, SelectionKey.OP_READ);
}catch (IOException e) {
e.printStackTrace();
}
}

想请教一下,在不中断应用的情况下,怎么把端口释放出来(我这会在应用里面连续调用多次发送消息)
...全文
126 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_36739932 2016-11-18
  • 打赏
  • 举报
回复
求大神帮忙啊

50,530

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧