node.jsのコードの詳細を調べていません。Java NIOノンブロッキングモードとnode.js非同期操作
しかし、Node.jsのスレッドに関するいくつかの調査を行ったところ、複数のクライアントからの接続を受け入れるための単一のスレッドがあることがわかりました。
クライアントと接続すると接続イベントが発生し、別のクライアントをリッスンし、非同期スタイルで完全に動作し、クライアント要求の休止操作がスレッドプールから実行され、結果がコールバック経由でメインスレッド(接続を受け入れるスレッド)に返されます。 。
Java NIOでもServerSocketChannelと同様に、SocketChannelは非ブロッキングモードで設定することができ、セレクタのシングルスレッドで複数のチャネルを監視することができます。したがって、NIO ServerSocketChannel、SocketChannelをシングルスレッドから使用すると、複数のクライアントに対して非同期で接続を管理することができます。
NIOの非ブロッキングモードであり、シングルスレッドのnode.js非同期は、 ?両方とも、単一のスレッドで実行されると言います。
非同期と非ブロックが類似のパターンであると仮定するのはよくある誤解です。 Node.jsには、ノンブロッキングのソケット操作もあります。したがって、両方のフレームワークでは、非スレッドIOを使用して、単一スレッドから複数の点を処理することができます。 – user568109