1
私はthis article OpenJDKがLinux上でepollを使用していると言っていますが、Selectorの実装でkqueue、dev/pollなどを伝統的なポーリングと比べて使用するかどうかは誰にも分かりますか?NIOセレクタはデフォルトでイベント通知を使用しますか?
私はthis article OpenJDKがLinux上でepollを使用していると言っていますが、Selectorの実装でkqueue、dev/pollなどを伝統的なポーリングと比べて使用するかどうかは誰にも分かりますか?NIOセレクタはデフォルトでイベント通知を使用しますか?
はい、あります。 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
があります。 –
Java7の更新:言われている:Windowsの部分は、ネイティブのIOCPに比べてかなり遅いです。ウィンドウセレクタは1024以上のチャンネルを選択できないため、かなり遅いです...可能であればウィンドウ下でAIOを使用してください – Kr0e