本文介绍: 每个子进程总是带有三个流对象:child.stdin, child.stdout 和child.stderr。以上发现多次执行main发现执行输出内容的顺序有时不同,结果不仅仅是上述两种结果,与子进程退出的速度有关。返回的对象拥有ChildProcess实例的所有方法,还有一个内建的通信信道。child_process.exec 使用子进程执行命令,缓存子进程的输出,多次执行发现同spawn的示例一样,也有多种执行结果,与子进程的退出程序有关。以下对上述方法详细说明。
Node.js 多进程
Node.js 是以单线程的模式运行的
,但它使用的是事件驱动来处理并发
,这样有助于我们在多核 cpu 的系统上创建多个子进程,从而提高性能。
每个子进程总是带有三个流对象:child.stdin, child.stdout 和child.stderr。他们可能会共享父进程的 stdio 流,或者也可以是独立的被导流的流对象。
Node 提供了 child_process 模块来创建子进程,方法有:
exec()
child_process.exec 使用子进程执行命令,缓存子进程的输出,并将子进程的输出以回调函数参数的形式返回
。
使用语法
示例
spawn()
使用语法
示例
fork()
使用语法
示例
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。