我正在尝试创建一个具有异步通信模型的服务器,并希望绑定多个端口,但当我调用多个绑定方法时,它会抛出错误"AlreadyBoundException“。有没有可能做到这一点?这是我的代码
try(AsynchronousServerSocketChannel listener = AsynchronousServerSocketChannel.open()){
if(listener.isOpen()){
listener.setOption(StandardSocketOptions.SO_RCVBUF, 4*1024);
listener.setOption(StandardSocketOptions.SO_REUSEADDR, true);
listener.bind(new InetSocketAddress(9001));
listener.bind(new InetSocketAddress(9002));发布于 2015-02-24 20:46:54
您只能将单个AsynchronousServerSocketChannel (或任何其他NetworkChannel或Socket)绑定到一个端口。如果套接字已绑定,则bind()方法将引发AlreadyBoundException
但是,您可以使用多个AsynchronousServerSocketChannel,每个端口一个。
https://stackoverflow.com/questions/28695811
复制相似问题