nodejsのマルチプロセス管理モジュールchild_process
4144 ワード
ちどり_processはNode.jsの一�であり、非常に重要な模�Kであり、通�^はF�で建多�M程であり、多核を利用して、Y源を计算し、各サブモジュールのプロセスを管理するのに便利である.
Node.js 0.8のchild_process模�Kは四�を提供しています.建子�M程の函を担负しています.eはspawn、exec、execFile、forkです.その中でもspawnは最も原始的で、建子�M程の函で、他の三�はすべて�spawnの违う程度の封�bです.spawnは指定されたプログラムを実行することしかできません.また、敵盤はリストの中で出します.また、execvp系では、y函を担します.execは直接に�行�sの命令を行うことができます.
次のspawnとexecの違いを見ます.
fork函では、例えばfork('.child.js')と、spawn(node'、'.child.js')と、対比して、spawn('.child.js')と、c Me Jのspawnとは違って、forkで、父�M程で直接に親子の通信を成立させます.
このうち父�M程、{正k函でだが、@取一�戻り値、�子�M程の文柄、通�^send函、卵l送情報、on(‘message’)�Oで返した情報、子�M程通�^ο笙しゅっ�の方法は、c父�M程通信です.
fork函で洗浄します.つまり、JavaScript代�aしかないです.もしあなたが好きなら、CoffeeScriptを使ってもいいです.{用の.一�、蔚姆椒ㄊ前洪水�a、JavaScriptまでは更に�行していますが、とても不便で、あります.N�法がありますか?答えはいいです.spawn函に戻ります.spawn函�党はcommand、argsの外で、1件のoptionsを受け入れます.親子で、M程の距離でIPCパイプを作ることができます.たとえば、子�M程はCoffee Scriptを使います.
転載元トランスポート
Node.js 0.8のchild_process模�Kは四�を提供しています.建子�M程の函を担负しています.eはspawn、exec、execFile、forkです.その中でもspawnは最も原始的で、建子�M程の函で、他の三�はすべて�spawnの违う程度の封�bです.spawnは指定されたプログラムを実行することしかできません.また、敵盤はリストの中で出します.また、execvp系では、y函を担します.execは直接に�行�sの命令を行うことができます.
次のspawnとexecの違いを見ます.
- child = child_process.spawn('ls', ['-lh', '/usr']);
- child.stdout.setEncoding('utf8');
- child.stdout.on('data', function(data) {
- console.log(data);
- });
- child_process.exec('ls -lh /usr', function(err, stdout, stderr) {
- console.log(stdout);
- });
execFileでは、cspawnの�デ�も必要です.指定された打ちぐも必要です.しかし、1�を受け入れることができます.fork函では、例えばfork('.child.js')と、spawn(node'、'.child.js')と、対比して、spawn('.child.js')と、c Me Jのspawnとは違って、forkで、父�M程で直接に親子の通信を成立させます.
- var n = child_process.fork('./child.js');
- n.on('message', function(m) {
- console.log('PARENT got message:', m);
- });
- n.send({ hello: 'world' });
child.jsの内容:
- process.on('message', function(m) {
- console.log('CHILD got message:', m);
- });
- process.send({ foo: 'bar' });
このうち父�M程、{正k函でだが、@取一�戻り値、�子�M程の文柄、通�^send函、卵l送情報、on(‘message’)�Oで返した情報、子�M程通�^ο笙しゅっ�の方法は、c父�M程通信です.
fork函で洗浄します.つまり、JavaScript代�aしかないです.もしあなたが好きなら、CoffeeScriptを使ってもいいです.{用の.一�、蔚姆椒ㄊ前洪水�a、JavaScriptまでは更に�行していますが、とても不便で、あります.N�法がありますか?答えはいいです.spawn函に戻ります.spawn函�党はcommand、argsの外で、1件のoptionsを受け入れます.親子で、M程の距離でIPCパイプを作ることができます.たとえば、子�M程はCoffee Scriptを使います.
- child_process = require('child_process')
- options =
- stdio: ['ipc']
- child = child_process.spawn 'coffee', ['./child.coffee'], options
このうち、spawnの第一�を、翟O置で�行し、_本のデ�器でさえあれば、いいです.たとえば、Continuation.jsを使って、child=child upurcess.spawn(‘contionation’、'.child.co ffee’、options)だけが必要です.転載元トランスポート