Latest web development tutorials

Node.jsのコールバック関数

直接Node.jsの非同期プログラミングでは、コールバックで反映されます。

達成するためにコールバック非同期プログラミングに頼るが、非同期プログラムのコールバックを使用した後にそれを言うことはできません。

コールバック関数は、タスクの完了後に呼び出され、ノードは、Node APIは、すべてのコールバック関数をサポートし、多くのコールバックを使用しています。

例えば、我々は他のコマンドの実装しながら、我々はコールバック関数の戻りの引数として内容を完全に提出されますされている文書を読んだ後、ファイル側を読み取ることができます。 コードのパフォーマンスでブロックされていないか、ファイルI / O操作を待っています。 これは、大幅Node.jsののパフォーマンスは、同時多数の要求を処理することができますが向上します。


コード例をブロック

次のようにファイルINPUT.TXTを作成し、読み取ります。

本教程官网地址:www.w3big.com

次のように、main.jsファイルのファイルを作成します。

var fs = require("fs");

var data = fs.readFileSync('input.txt');

console.log(data.toString());
console.log("程序执行结束!");

次のように上記のコードが実行されます。

$ node main.js
本教程官网地址:www.w3big.com

程序执行结束!

コード例をノンブロッキング

次のようにファイルINPUT.TXTを作成し、読み取ります。

本教程官网地址:www.w3big.com

次のように、main.jsファイルのファイルを作成します。

var fs = require("fs");

fs.readFile('input.txt', function (err, data) {
    if (err) return console.error(err);
    console.log(data.toString());
});

console.log("程序执行结束!");

次のように上記のコードが実行されます。

$ node main.js
程序执行结束!
本教程官网地址:www.w3big.com

我々は、さまざまなブロッキングと非ブロッキング呼び出しの上記の2つの例を理解します。 ファイルの最初のインスタンスの後のプログラムを実行する前に読み込まれます。 2番目のインスタンスが、我々は大幅にプログラムのパフォーマンスを向上させる、ファイルの読み込み中に、次のコードを同時に実行することができるように、完全なファイルを読むために待つ必要はありません。

このように非ブロッキングがために必要とされていない間、それを遮断することによって、順次実行されるので、あなたは、コールバック関数のパラメータを処理する必要がある場合、我々は、コールバック関数で記述する必要があります。