首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >树莓节点- hid流:使用多个hid设备减缓应用程序的执行

树莓节点- hid流:使用多个hid设备减缓应用程序的执行
EN

Stack Overflow用户
提问于 2020-03-11 20:24:53
回答 1查看 238关注 0票数 0

我正在基于1GB服务器的Raspberry PI 41 1GB上扩展一个应用程序,使用express、节点hid流和串行口库从hid设备和串行口读取数据。3 hid设备可以正常工作,但是在添加第四个设备应用程序之后,速度非常慢(在5-10分钟内启动web服务器,串口甚至没有打开)。在运行3和4个hid设备的应用程序时,Raspberry内存消耗约为700 is,只有app滞后,所有hid设备的数据都可用。

根据节点-hid文档:

-这不是节点隐藏的限制,而是对所有用户空间库的限制。这是操作系统的一个安全功能,以防止输入设备窥探。

也许这是个问题。

一些代码示例:

代码语言:javascript
复制
var express = require('express');
var socket = require('socket.io');
var app = express();
var server = app.listen(8080, function(){
    console.log('listening on port 8080');
    });
app.use(express.static('public'));

//Socket setup
var io = socket(server);

io.on('connection', function(socket){
    console.log('made socket connection')
    });

(...)

var serialport = require ("serialport");
var port = new serialport('/dev/ttyACM0', {
  baudRate: 9600,
   dataBits: 8,
   parity: 'none',
   stopBits: 1,
   flowControl: false,

});

port.on("open", function () {
  //console.log('port otwarty'); 
 port.on('data', function(data) {
    //console.log('data received: ' + data);
    f_CReaderCard(data.toString());
  });
});

(...)

var KeyboardCharacters = require('node-hid-stream').KeyboardCharacters;
var CReaderD1 = new KeyboardCharacters({path: '/dev/hidraw0'}); 
var CReaderD2 = new KeyboardCharacters({path: '/dev/hidraw1'}); 
var CReaderU1 = new KeyboardCharacters({path: '/dev/hidraw2'}); 
var CReaderU2 = new KeyboardCharacters({path: '/dev/hidraw3'}); 

(...)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-11 16:14:42

通过在顶部添加这一行来增加线程号

process.env.UV_THREADPOOL_SIZE=10

这将将环境变量UV_THREADPOOL_SIZE设置为10。

默认值为"4“,最大值为1024。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60643941

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档