【问题标题】:Callbacks and Serial Port Draining in Node.jsNode.js 中的回调和串行端口耗尽
【发布时间】:2017-01-31 13:46:49
【问题描述】:

我有一个功能,当您按下一个键时,它会通过串行端口发送一个键码。但是,在这种情况下,onKey 的回调被激活的速度比数据写入串口的速度要快,所以我需要使用一个漏函数来发送所有数据并在完成后回调。

在尝试发送下一个关键代码之前,如何等待 drainSerialPort 回调执行?我认为有更好的方法来构建这三个函数。

onKey(function(key) {
  writeSerial(key, function() {
    drainSerialPort(function() {
      // Wait for this callback to be called to continue
    });
  });
});

【问题讨论】:

    标签: node.js asynchronous callback serial-port


    【解决方案1】:

    根据您的要求,最适合您的选择是异步。 首先你的函数 onKey 被执行,当它完成后函数 writeSerial 被执行。

            var onKey = function (key) {
            };
    async.eachSeries(onKey, writeSerial, function (err) {
        if (err) {
            res.json({status: 0, msg: "OOPS! How is this possible?"});
        }
        drainSerialPort(function () {
            // Wait for this callback to be called to continue
        });
        res.json("Series Processing Done");
    })
    var writeSerial = function (key) {
    };
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-09-22
      • 2015-05-31
      • 2018-06-25
      • 1970-01-01
      • 1970-01-01
      • 2017-11-16
      • 2016-12-01
      相关资源
      最近更新 更多