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