相关疑难解决方法(0)

Node.js fs.open() 在尝试打开超过 4 个命名管道 (FIFO) 后挂起

我有一个 node.js 进程,它需要从不同的其他进程提供的多个命名管道中读取作为 IPC 方法。

在打开并创建来自四个以上 fifos 的读取流后,我意识到 fs 似乎不再能够打开 fifos 并且只是挂在那里。

考虑到可以同时打开数千个文件而不会出现问题(例如在以下脚本中替换mkfifotouch),这个数字似乎有点低。

我在 MacOS 10.13 上使用 node.js v10.1.0 和在 Ubuntu 16.04 上使用 node.js v8.9.3 进行了测试,结果相同。


错误的脚本

以及显示此行为的脚本:

var fs = require("fs");
var net = require("net");
var child_process = require('child_process');

var uuid = function() {
    for (var i = 0, str = ""; i < 32; i++) {
        var number = Math.floor(Math.random() * 16);
        str += number.toString(16);
    }
    return str;
}

function setupNamedPipe(cb) {
    var id …
Run Code Online (Sandbox Code Playgroud)

javascript c++ fifo ulimit node.js

5
推荐指数
1
解决办法
961
查看次数

标签 统计

c++ ×1

fifo ×1

javascript ×1

node.js ×1

ulimit ×1