NodeJs exec()函数在一段时间后停止分叉

时间:2016-08-11 11:11:21

标签: javascript node.js bluez

我正在尝试使用Bluez在nodeJs上构建BLE扫描模块 这是我一直在使用的代码:

exec('sudo hcitool lescan --duplicates &', function (error, stdout, stderr) { });

exec('sudo hcitool lescan --duplicates &', function (error, stdout, stderr) {
    var result = exec('sudo hcidump --raw &');

    /*
     * Whenever hcidump returns a  raw data, this function calls itself. And pushes 
     * the raw data to createBeaconDevice function.
     */
    result.stdout.on('data', function (data) {
        var currentDate = new Date();
        writeLog('scanData', data, currentDate.toISOString().replace(/T/, ' ').replace(/\..+/, ''))
        createBeaconDevice(data);
    });
});

但问题是它在一段时间后停止工作而没有发出任何警告或错误。可能是什么问题呢?如果有人能提供帮助,我会很高兴

1 个答案:

答案 0 :(得分:0)

它是如何停止工作的?

你可以像这样处理错误参数

function (error, stdout, stderr) {
    if (error) throw new Error(error) // to get info
    ...
}

获取有关事情向南的信息。