Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 环境变量(使用process.env创建)是否在父级和;子节点进程?_Node.js - Fatal编程技术网

Node.js 环境变量(使用process.env创建)是否在父级和;子节点进程?

Node.js 环境变量(使用process.env创建)是否在父级和;子节点进程?,node.js,Node.js,我想知道为什么主节点进程中使用process.env.创建的环境变量在使用节点的ForkAPI创建的任何子进程中都可用 举个例子,我正在使用Electron构建一个桌面应用程序。在该应用程序中,我使用如下代码通过UI为代理设置设置环境变量: process.env.HTTPS_PROXY = 'proxy server url'; 现在从这个应用程序开始,我需要在后台运行一些任务,为此,我将使用Node的ForkAPI启动新的进程。我注意到,当我在子进程中打印这个变量的值时,我得到的是我在UI

我想知道为什么主节点进程中使用
process.env.创建的环境变量在使用节点的
Fork
API创建的任何子进程中都可用

举个例子,我正在使用Electron构建一个桌面应用程序。在该应用程序中,我使用如下代码通过UI为代理设置设置环境变量:

process.env.HTTPS_PROXY = 'proxy server url';
现在从这个应用程序开始,我需要在后台运行一些任务,为此,我将使用Node的
Fork
API启动新的进程。我注意到,当我在子进程中打印这个变量的值时,我得到的是我在UI(父进程)中设置的值


我的理解是,当我使用
Fork
生成子进程时,会创建一个完全独立于父进程的新进程(它们之间创建的IPC通道除外)。如果这些流程彼此独立,那么我在父流程中定义的这些环境变量如何在子流程中可用

你部分正确。无论何时调用
fork()
进程,新的子进程都是独立的,正如您正确地说的,它与IPC无关。但这里的关键是,这个子对象从其父对象继承了它的“环境”。所以本质上,父级中的任何“环境”变量都是子级的一部分,但任何“shell”变量都不是。类似的概念也适用于“导出”变量。

部分正确。无论何时调用
fork()
进程,新的子进程都是独立的,正如您正确地说的,它与IPC无关。但这里的关键是,这个子对象从其父对象继承了它的“环境”。所以本质上,父级中的任何“环境”变量都是子级的一部分,但任何“shell”变量都不是。类似的概念也适用于“导出”变量。

谢谢Anshul。是否有一些文档链接,你可以指向我可以阅读更多关于这方面的信息?也许会有帮助:)谢谢!你分享的链接确实很有帮助。谢谢Anshul。是否有一些文档链接,你可以指向我可以阅读更多关于这方面的信息?也许会有帮助:)谢谢!你分享的链接确实很有帮助。