/ /ノードファイバーはブロックされていますか? -javascript、node.js、非同期、io、ノードファイバー

ノードファイバーはブロックされていますか? - javascript、node.js、非同期、io、ノードファイバー

非同期データベース操作など、Node.jsでI / O集中タスクを実行する場合、 ノードファイバー、ブロッキングですか?

私はまだノードファイバーを使用していないので、b / c-通常は非ブロッキングの長いI / Oコードが実行されるHTTPリクエストを処理するコードで使用すると、他のリクエストがアプリにアクセスできなくなります。これは本当ですか?なぜそれがtrue / falseであるかについての詳細も非常に役立ちます。

回答:

回答№1は1

ファイバーを使用すると、プログラマーは「スレッドのように」書くことができますブロッキングステートメントJavaScriptコード。しかし、その実装はブロッキングではなく、コードはnode.js非同期イベントコードと同等です。Laverdets実装は、非同期node.jsモデルのように、ある時点でファイバーの実行を一時停止し、後で再開できます。

繊維はより多くの構文糖質であり、そうではありませんnode.js非同期モデルを変更します。唯一の違いは、ファイバーが異なる実行スタックを作成することです(私が正しい場合)。これは、通常のnodejs非同期コードのわずかなオーバーヘッドです。