3
我正在将一个现有的程序移植到nodejs。在这个程序中,我打开一个文件描述符,然后将它传递给一个线程,该线程调用poll
以确定它何时可读。如何在给定文件描述符的情况下打开nodejs Duplex流?
而不是编写一个自定义的C++模块,我真的很喜欢用纯JavaScript做这个,利用Node的方便Dandy 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_*
。
'var stream = new net.Socket({fd:fd})' – vkurchatkin
fd不适用于套接字吗? –
应该适用于插座和管道 – vkurchatkin