Я нашел эту статью, в которой говорится, что OpenJDK использует epoll в Linux, но кто-нибудь знает, используют ли реализации Selector kqueue, dev/poll и т. д. вместо традиционных опросов, где они доступны?
Используют ли селекторы NIO уведомления о событиях по умолчанию?
Ответы (1)
Да, это так. java.nio.channels.Selector.open() возвращает разные реализации в зависимости от вашей базовой операционной системы. Например. Если вы используете JRE от солнца/оракула, вы получите:
Windows
sun.nio.ch.WindowsSelectorImpl
Mac OS
sun.nio.ch.KQueueSelectorImpl
Linux
sun.nio.ch.EPollSelectorImpl
Solaris
sun.nio.ch.PollSelectorImpl
person
Schildmeijer
schedule
27.10.2011
Обновление Java7: при этом: часть Windows довольно медленная по сравнению с собственным IOCP. Селектор Windows не может выбрать более 1024 каналов и поэтому работает довольно медленно... Используйте AIO, если это возможно, под Windows.
- person Kr0e; 21.05.2014