node.js プログラムで実行できるスレッドは 1 つだけです。
このスレッドがブロックされている場合、たとえば、キーボードからの入力を待機している場合でも、他のイベントに応答できますか?
イベント処理を分散するためのバックグラウンド イベント ループ スレッドはありますか?
node.js プログラムで実行できるスレッドは 1 つだけです。
このスレッドがブロックされている場合、たとえば、キーボードからの入力を待機している場合でも、他のイベントに応答できますか?
イベント処理を分散するためのバックグラウンド イベント ループ スレッドはありますか?
このスレッドがブロックされている場合でも、他のイベントに応答できますか?
すぐに応答することはできませんが、最終的にブロックを終了したときに、これらのイベントがキューに入れられて処理されることを願っています。
イベント処理を分散するためのバックグラウンドイベントループスレッドはありますか?
バックグラウンドスレッドはありません。イベントは「メイン」(唯一の)スレッドによっても処理されます。
ルールは、node.jsでブロックしないことです。時間がかかる場合は、非同期コールバックを介して処理する必要があります。CPU負荷の高い操作を同時に実行する場合は、複数のプロセスを使用する必要があります(そして、非同期コールバックで結果を受け取ります)。
このすべての利点は、複数のスレッドの同期について心配する必要がないことです(スレッドが1つしかないため)。これにより、プログラミングがより安全になります(ただし、どこでもコールバックに慣れる必要があります)。