Java 如何使用AsynchronousServerSocketChannel绑定多个端口?

Java 如何使用AsynchronousServerSocketChannel绑定多个端口?,java,serversocket,channel,nio2,Java,Serversocket,Channel,Nio2,我试图创建一个具有异步通信模型的服务器,并希望绑定多个端口,但当我调用一个以上的bind方法时,它会抛出一个错误“AlreadyBoundException”。有什么可能的方法可以做到这一点吗? 这是我的密码 try(AsynchronousServerSocketChannel listener = AsynchronousServerSocketChannel.open()){ if(listener.isOpen()){

我试图创建一个具有异步通信模型的服务器,并希望绑定多个端口,但当我调用一个以上的bind方法时,它会抛出一个错误“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));

您只能将单个
异步服务器socketchannel
(或任何其他
网络频道
套接字
)绑定到一个端口。如果套接字已绑定,则该方法将抛出

但是,您可以与多个
异步服务器socketchannel
一起使用,每个端口一个