node.js fork 函数并将参数传递给子进程

标签 node.js

我在创建 chlid 进程时传递参数

if (cluster.isMaster) {
    for (var i = 0; i < os.cpus().length; i++) {
        var new_worker_env = {};
        new_worker_env["WORKER_NAME"] = "worker" + i;

        var new_worker = cluster.fork(new_worker_env);
    }
}

然后尝试在 child 中阅读它:

if ( process.env["WORKER_NAME"] != undefined ) instance.name = process.env["WORKER_NAME"];

但是这个变量不存在,为什么?

Node v0.8.8

最佳答案

似乎适用于 Windows,Node.js 版本 0.8.8

var cluster = require('cluster'),
    os      = require('os');

if (cluster.isMaster) {
    for (var i = 0; i < os.cpus().length; i++) {
        var new_worker_env = {};

        new_worker_env["WORKER_NAME"] = "worker" + i;

        var new_worker = cluster.fork(new_worker_env);
    }
} else {
    console.log(process.env['WORKER_NAME']);
}

输出:

worker0
worker1

关于node.js fork 函数并将参数传递给子进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12495231/

相关文章:

node.js - 异步并行读取文件

node.js - 通过网络以最低延迟控制 Arduino

javascript - Node dbus-native - 使用 connMan 连接到 WiFi 服务时传递密码

javascript - 如何将参数传递给回调函数内部

node.js - nvm 别名默认 Node.js 版本不持久

json - NodeJS HttpGet 到带有 JSON 响应的 URL

node.js - 我在使用 Nodejs npm 安装 Web 服务器 "connect"时遇到错误

javascript - 错误 : data and salt arguments required

javascript - Babelify 在从 node_modules 导入模块时抛出 ParseError

node.js - Sequelize + Sequelize cli 播种大量随机数据