【发布时间】:2017-11-14 08:22:13
【问题描述】:
在官方doc的例子中,好像要一个接一个地接受连接。这让我很困惑,所以我看了sun.nio.ch.UnixAsynchronousServerSocketChannelImpl的source code,在第 269 行有一条注释检查并设置标志以防止并发接受,那么有人可以告诉我为什么要阻止当前接受吗? 这是操作系统的限制还是目前不需要接受连接。提前谢谢。
【问题讨论】:
-
我认为这是为了防止在收到连接请求时创建多个套接字实例或流。因此,它会导致并发接受问题。了解如何处理 NIO - 应该只有一个 Selector 线程来接受连接,但是您可能有多个线程来处理数据..
标签: java concurrency aio