【发布时间】:2016-02-27 08:38:06
【问题描述】:
我正在尝试将数据从我的主应用程序发送到子进程。我尝试了几种不同的选择,但我目前陷入困境。非常感谢您的建议或指示。
我正在关注http://pm2.keymetrics.io/docs/usage/pm2-api/的文档
index.js:
var pm2 = require('pm2');
var processName = "pm2_app";
console.log("hello world!");
pm2.connect(function(err) {
if (err) {
console.error(err);
process.exit(2);
}
pm2.start({
script : "pm2_app.js" // Script to be run
}, function(err, apps) {
if(err) {
console.log(err);
}
console.log("app started!");
pm2.list(function(err, list) {
console.log("Child process started with pid: " + list[0].pid);
pm2.sendDataToProcessId({
type : 'process:msg',
data : {
some : 'data',
hello : true
},
id : list[0].pid
},
function(err, res) {
console.log(err);
console.log("message sent");
});
pm2.disconnect();
});
});
});
pm2_app.js:
var start = Date.now();
setInterval(function(){
console.log(Date.now() - start);
}, 1000);
process.on('message', function(packet) {
console.log("got message from mr. Rabbit");
console.log(packet);
});
【问题讨论】:
-
试试:
process.on('process:msg', ....)