node

child_process 子进程

2022-05-10  本文已影响0人  small_zeo

默认情况下,会在父 Node.js 进程和衍生的子进程之间建立 stdin、stdout 和 stderr 的管道。 这些管道的容量有限(且特定于平台)。 如果子进程在没有捕获输出的情况下写入标准输出超过该限制,则子进程会阻塞等待管道缓冲区接受更多数据。
为方便起见,node:child_process 模块提供了一些同步和异步方法替代 child_process.spawn()child_process.spawnSync()。 这些替代方法中的每一个都是基于 child_process.spawn()child_process.spawnSync() 实现。

child_process.exec()

衍生 shell 并在该 shell 中运行命令,完成后将 stdout 和 stderr 传给回调函数。

const cp = require ('child_process');
cp.exec ('rm -rf dist');
child_process.spawn()

异步衍生子进程,不会阻塞 Node.js 事件循环。

child_process.spawnSync()

以同步方式提供等效的功能,其会阻塞事件循环,直到衍生的进程退出或终止。

http://nodejs.cn/api/child_process.html

上一篇 下一篇

猜你喜欢

热点阅读