0
我有一個幸福路徑的情況下工作正常的node-serialport庫,但我想解決錯誤處理。使用域與串行端口節點
我正在處理的特定測試案例只是簡單地說串行設備沒有插入。理想情況下,我可以檢測到存在問題,然後在短暫延遲後重試。
的問題是,我不斷收到以下錯誤:
events.js:72
throw er; // Unhandled 'error' event
Error: cannot open /dev/ttyACM0
我希望這樣的事情,因爲該設備沒有插好,但我要抓住它。 try/catch顯然不起作用,因爲它是異步的。所以我想「域」,這似乎是推薦的方法:
function reconnect() {
var d = domain.create();
d.on("error", function(err) {
console.error(err);
setTimeout(reconnect, RETRY_DELAY_MS);
});
d.run(function() {
var gps = new SerialPort("/dev/ttyACM0");
gps.on("open", function() {
console.log("Success!");
});
gps.on("error", function(err) {
console.error(err);
setTimeout(reconnect, RETRY_DELAY_MS);
});
});
}
我希望它可以收到預期的效果,但我得到了同樣的錯誤如上。
有沒有人看到我只是沒有得到什麼?