Nodejs 将参数传递给 fork 对象

cod*_*ect 3 memory arguments fork node.js

如何发送“--max_old_space_size=1024”到子进程fork?我尝试将此参数作为 args 、 argv 发送,请注意,因为我需要通信通道,所以我无法使用 exec 或 spawn。所以基本上我想运行我的子进程

require('child_process').fork('myfile.js');
Run Code Online (Sandbox Code Playgroud)

作为

node --max_old_space_size=1024 myfile.js
Run Code Online (Sandbox Code Playgroud)

Sto*_*law 7

您正在寻找's options属性execArgvfork

require('child_process').fork('myfile.js', {
  execArgv: ['--max_old_space_size=1024']
});
Run Code Online (Sandbox Code Playgroud)

然后myfile.js你可以通过以下方式检查它是否已被考虑process.execArgv

console.log(process.execArgv);
Run Code Online (Sandbox Code Playgroud)

其输出结果应与直接调用相同:

node --max_old_space_size=1024 myfile.js
Run Code Online (Sandbox Code Playgroud)

这区分了这两种类型的参数:node <node's args> file.js <file's args>