我使用nodejs cluster
var cluster = require('cluster');
var numCPUs = require('os').cpus().length;
if (cluster.isMaster) {
for (var i = 0; i < numCPUs; i++){
var worker = cluster.fork();
worker.on('exit', function(code, signal) {
console.log("worker was killed by signal: " + signal);
});
}
}
有时候我会有不同的时间间隔错误
worker was killed by signal: SIGSEGV
这个错误意味着什么,为什么她打电话? 节点版本v0.11.14-pre,Debian
答案 0 :(得分:0)
不确切知道答案,但认为这可能会有所帮助。
使用phantomJs
我有时会 同样的错误(更改工作人员的信号)。情况:我正在使用phantomJs打开一个页面;当身体准备就绪时我想要回调,然后我关闭了幻影。 grosso modo我的代码是:
phantom.create(function (ph) {
...
callbackDone(result);
ph.exit();
});
这样做,例外是:
signal killed phantomjs: SIGSEGV
此时我意识到重击回调任务正在打破只是。换句话说,如果exit()
之前的回调函数很轻松:一切都很好;但在不同的条件下它会崩溃。
解决方案:在回调之前关闭对象:
ph.exit();
callbackDone(result);