0

node.js アプリケーションには、timestamp というプログラムを開始する次のコードがあります。

var exec = require('child_process').exec, child;

child = exec('./timestamp 207.99.83.228 5000 -p 5500 &', function (error, stdout, stderr) {
    if (error !== null) {
        console.log('exec error: ' + error);
    } else {
        // Code to be executed after the timestamp program has started
        ...
    }
}); 

ただし、次のように exec を呼び出す前に実行しない限り、これはタイムスタンププログラムを開始しません。

exec('./timestamp 207.99.83.228 5000 -p 5500 &', null);

この行を省略すると、何も表示されず、エラー メッセージも表示されません。

したがって、プログラムの 1 つのインスタンスを正常に開始するには、 exec を2 回呼び出す必要があります。それはnode.jsまたはChildProcessクラスのバグですか、それともここに何か欠けていますか?

4

0 に答える 0