CNode

nodejs 有没有可以跨进程的全局变量

问答
Bbuxkk321发布于11 年前最后回复11 年前18 回复9577 浏览0 收藏

我想在子进程中访问父进程中的变量

查看回复

回复 (18)

A
abbshr#1·11 年前

没有, 需要IPC交互. 最简单也得process.send和process.on "message"

A
alsotang#2·11 年前

redis +1

H
holyrain#3·11 年前

用redis吧,比使用process通信的方式简单

W
wenbob#4·11 年前

簡單的變量可以用redis,大的複雜的變量,建議在 shm 目錄用json文件,減少內存複製成本

A
albin3#5·11 年前

redis +1

L
leapon#6·11 年前

万能的 redis

I
i5ting#7·11 年前

global

B
buxkk321#8·11 年前

主进程中 global.testa=1; require('child_process').fork('./tc.js'); 子进程中 console.log(global.testa); 结果是undefined

P
pfcoder#9·11 年前

应该用消息传递的,没发现可以直接跨进程访问变量的

1
103777673#10·11 年前

没,用redis

D
DavidCai1993#11·11 年前

redis其实不错哦

Y
yunnysunny#12·11 年前

没有。所以我写了一个模块,专门解决这个问题https://github.com/yunnysunny/node-shmdb

H
HelloKevinTian#13·11 年前

nodejs是单线程。木有你的需求,需要脱离nodejs来实现

B
buxkk321#14·11 年前
P
pangguoming#15·11 年前

存入Redis, 或者JSON文件,或者XML文件,等脱离nodejs 的载体

H
Hanggi#16·11 年前

redis 比全局变量更快吗?今天npm怎么了,万能的ioredis拔不下来呢。

Y
yunnysunny#17·11 年前
引用 buxkk321@yunnysunny 安装失败,这个模块需要先安装什么啊?

@buxkk321 这个需要c库的支持,你得安装vs 和python2.7才能编译成功

A
alsotang#18·11 年前

@pangguoming @Hanggi cnpmjs.org

参与回复
登录后即可参与回复。登录