Ork*_*zen 5 child-process node.js
当我们打电话:
var p = require(child_process);
Run Code Online (Sandbox Code Playgroud)
我们是否已经在创建子流程?(如果不是,p这里有什么?)
为了解释我的混乱,在我拿起的代码库中,我看到:
var childProcess1 = require("child_process");
var _retrieveChild = childProcess1.fork(
__dirname + '/backgroundProcesses/DadProcess',
{ execArgv: ['--debug=5859'] }
);
Run Code Online (Sandbox Code Playgroud)
我问自己,是否正在创建一个来自子进程的另一个进程,或者childProcess1只是一个非常严重的名称?
jak*_*lla 15
需要模块有时可以初始化模块,所以不要对不知道感到不快.他们都是不同的.然而,child_process也并非通过要求模块为你做简单的创建一个进程.您必须调用fork()或spawn()(或exec())实际创建一个新进程(和PID).
如果查看文档,您可以看到他们有时会使用这种语法:
var spawn = require('child_process').spawn;
// ...
spawn('ps', ['ax']);
Run Code Online (Sandbox Code Playgroud)
它基本上抓住了模块API,然后spawn关闭了该方法,并将其别名为局部变量,以便稍后在代码中使用.
编辑
为了便于您理解,只需在Node模块内部,模块决定要"导出"的内容.无论它出口什么,都将从require(...)通话中返回.例如,如果我们有这个模块:
// foo.js
module.exports = function() {
return "bar";
};
Run Code Online (Sandbox Code Playgroud)
然后require("foo")会给我们一个函数(但它还没有被调用):
var mymodule = require("foo");
var result = mymodule(); // <-- this calls the function returned via module.exports
console.log(result); // "bar"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8273 次 |
| 最近记录: |