Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我发现这篇文章说 OpenJDK 在 linux 上使用 epoll,但是有人知道 Selector 实现是否使用 kqueue、dev/poll 等而不是可用的传统轮询?
是的,它确实。java.nio.channels.Selector.open() 根据您的底层操作系统返回不同的实现。例如。如果您使用来自 sun/oracle 的 JRE,您将获得:
Windows sun.nio.ch.WindowsSelectorImpl Mac OS sun.nio.ch.KQueueSelectorImpl Linux sun.nio.ch.EPollSelectorImpl Solaris sun.nio.ch.PollSelectorImpl