关于 JAVA udp datagramchannel 的使用
本人程序里面需要调用一个使用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();
}
}
想请教一下,在不中断应用的情况下,怎么把端口释放出来(我这会在应用里面连续调用多次发送消息)