我们不妨设现在有一个需要运行2.3s左右的程序。它在同目录下。./1可以执行它, 我们给它重定向输入输出,但是这个程序有时间限制,一旦超过时间限制我们需要立马终结它。
var cp = require('child_process');
var child = cp.exec(__dirname + '/1 < in > tempout', function(err, stdout, stderr) {
clearTimeout(timer);
});
var timer = setTimeout(function() {
child.kill();
}, 1000);
然后我尝试了这样一个代码,发现无论如何程序还是会在2.3s后正常输出到tempout。
var cp = require('child_process');
cp.exec(__dirname + '/1 < in > tempout', {timeout: 1000, killSignal: 'SIGTERM'}, function(err, stdout, stderr) {
});
仍然和上述情况相同。。不知道为啥,跪求解答。