我将现有程序移植到nodejs。在这个程序中,我打开一个文件描述符,然后将其交给一个调用poll
的线程,以确定它何时可读。
我不想编写自定义C ++模块,而是真的想在纯JavaScript中使用Node方便的花花公子Duplex stream。
例如,我想做这样的事情:
var device = new PollDuplexStream(fileDescriptor);
device.on('data', function(data) {
// data handling logic here
});
...
var chunk = new Buffer(...);
device.write(chunk);
似乎这应该存在,但我没有看到它的作用。也许我只是瞎了?从上面的示例中,PollDuplexStream
的真实世界等同于什么?
请注意,我明确地寻找以文件描述符而不是路径开头的解决方案,否则我只是从fs.createReadStream
和fs.createWriteStream
创建自己的解决方案。
另外,我并不在乎它在内部调用poll
- 事实上,我更喜欢它在内部使用libuv uv_poll_*
。
答案 0 :(得分:0)
您需要创建一个使用uv_poll_t句柄的二进制插件,该句柄能够轮询任意文件描述符的可读性/可写性。