当前位置: 首页 > news >正文

北京孤儿院做义工网站仙居网站开发

北京孤儿院做义工网站,仙居网站开发,响应式旅游网站模板,wordpress文本编辑插件[node]Node.js多线程 Node.js 多进程exec()使用语法示例 spawn()使用语法示例 fork()使用语法示例 Node.js 多进程 Node.js 是以单线程的模式运行的#xff0c;但它使用的是事件驱动来处理并发#xff0c;这样有助于我们在多核 cpu 的系统上创建多个子进程#xff0c;从而提… [node]Node.js多线程 Node.js 多进程exec()使用语法示例 spawn()使用语法示例 fork()使用语法示例 Node.js 多进程 Node.js 是以单线程的模式运行的但它使用的是事件驱动来处理并发这样有助于我们在多核 cpu 的系统上创建多个子进程从而提高性能。 每个子进程总是带有三个流对象child.stdin, child.stdout 和child.stderr。他们可能会共享父进程的 stdio 流或者也可以是独立的被导流的流对象。 Node 提供了 child_process 模块来创建子进程方法有 exec - child_process.exec 使用子进程执行命令缓存子进程的输出并将子进程的输出以回调函数参数的形式返回。spawn - child_process.spawn 使用指定的命令行参数创建新进程。fork - child_process.fork 是 spawn()的特殊形式用于在子进程中运行的模块如 fork(’./son.js’) 相当于 spawn(‘node’, [’./son.js’]) 。与spawn方法不同的是fork会在父进程与子进程之间建立一个通信管道用于进程之间的通信。 以下对上述方法详细说明 exec() child_process.exec 使用子进程执行命令缓存子进程的输出并将子进程的输出以回调函数参数的形式返回。 使用语法 child_process.exec(command[, options], callback)command:字符串,将要运行的命令,参数使用空格隔开options 对象属性包括 cwd 字符串子进程的当前工作目录env对象, 环境变量键值对encoding 字符编码(默认:utf8)shell 字符串将要执行命令的 Shell(默认: 在 UNIX 中为/bin/sh 在 Windows 中为cmd.exe Shell 应当能识别 -c开关在 UNIX 中或 /s /c 在 Windows 中。 在Windows 中命令行解析应当能兼容cmd.exe)timeout数字超时时间(默认:0)maxBuffer数字 在 stdout 或 stderr 中允许存在的最大缓冲(二进制)如果超出那么子进程将会被杀死 (默认: 200*1024)killSignal 字符串结束信号(默认SIGTERM)uid数字设置用户进程的 IDgid数字设置进程组的 ID callback 回调函数包含三个参数error, stdout 和 stderr。 exec() 方法返回最大的缓冲区并等待进程结束一次性返回缓冲区的内容。 示例 support.js 文件代码 console.log(进程 process.argv[2] 执行。 );main.js 文件代码 const fs require(fs); const child_process require(child_process); for(var i0; i3; i) {//运行support.jsvar workerProcess child_process.exec(node support.js i, function (error, stdout, stderr) {if (error) {console.log(error.stack);console.log(Error code: error.code);console.log(Signal received: error.signal);}console.log(stdout: stdout);console.log(stderr: stderr);});workerProcess.on(exit, function (code) {console.log(子进程已退出退出码 code);}); }执行以上代码,main中代码运行support $ node main.js 以下为输出结果 子进程已退出退出码 0 stdout: 进程 0 执行。 stderr: 子进程已退出退出码 0 stdout: 进程 1 执行。 stderr: 子进程已退出退出码 0 stdout: 进程 2 执行。 stderr: spawn() child_process.spawn 使用指定的命令行参数创建新进程 使用语法 child_process.spawn(command[, args][, options])command:将要运行的命令args:Array 字符串参数数组options Object对象 cwd(String): 子进程的当前工作目录env(Object): 环境变量键值对stdio(Array|String): 子进程的 stdio 配置detached(Boolean): 这个子进程将会变成进程组的领导uid(Number): 设置用户进程的 IDgid(Number): 设置进程组的 ID spawn() 方法返回流 (stdout stderr)在进程返回大量数据时使用。进程一旦开始执行时 spawn() 就开始接收响应。 示例 support.js 文件代码 console.log(进程 process.argv[2] 执行。 );main.js 文件代码 const child_process require(child_process); for (var i 0; i 3; i) {var workerProcess child_process.spawn(node, [temp1.cjs, i]);workerProcess.stdout.on(data, function (data) {console.log(stdout: data);});workerProcess.stderr.on(data, function (data) {console.log(stderr: data);});workerProcess.on(close, function (code) {console.log(子进程已退出退出码 code);}); }执行以上代码,main中代码运行support $ node main.js 以下为输出结果 stdout: 进程 0 执行。子进程已退出退出码 0 stdout: 进程 1 执行。 stdout: 进程 2 执行。 子进程已退出退出码 0 子进程已退出退出码 0或者 stdout: 进程 0 执行。子进程已退出退出码 0 stdout: 进程 1 执行。 子进程已退出退出码 0 stdout: 进程 2 执行。子进程已退出退出码 0以上发现多次执行main发现执行输出内容的顺序有时不同结果不仅仅是上述两种结果与子进程退出的速度有关 fork() child_process.fork 是 spawn() 方法的特殊形式用于创建进程 使用语法 child_process.fork(modulePath[, args][, options])modulePath(String):将要在子进程中运行的模块args(Array): 字符串参数数组options(Object):对象 cwd(String):子进程的当前工作目录env(Object): 环境变量键值对execPath(String):创建子进程的可执行文件execArgv(Array):子进程的可执行文件的字符串参数数组(默认:process.execArgv)silent(Boolean):如果为true子进程的stdinstdout和stderr将会被关联至父进程否则它们将会从父进程中继承。(默认为false)uid(Number):设置用户进程的 IDgid(Number):设置进程组的 ID 返回的对象拥有ChildProcess实例的所有方法还有一个内建的通信信道。 示例 support.js 文件代码 console.log(进程 process.argv[2] 执行。 );main.js 文件代码 const child_process require(child_process); for (var i 0; i 3; i) {var worker_process child_process.fork(temp1.cjs, [i]);worker_process.on(close, function (code) {console.log(子进程已退出退出码 code);}); } 执行以上代码,main中代码运行support $ node main.js 以下为输出结果 进程 0 执行。 子进程已退出退出码 0 进程 1 执行。 进程 2 执行。 子进程已退出退出码 0 子进程已退出退出码 0多次执行发现同spawn的示例一样也有多种执行结果与子进程的退出程序有关
http://www.zqtcl.cn/news/843844/

相关文章:

  • 北京企业网站建设电话长沙建设工程信息网
  • 大型综合门户网站开发扁平化个人网站
  • 怎么做代理人金沙网站长沙 网站运营
  • 商城网站开发的目的和意义鲜花类网站建设策划书范文
  • 什么类型的公司需要做建设网站的iis7 网站权限设置
  • 信誉好的商城网站建设火车头 wordpress 发布
  • 龙岩做网站抚顺 网站建设
  • wordpress怎么设置广告位青州网站优化
  • 网站的备案编号高端网站建设谷美
  • 佛山智能网站建设地址设计资溪做面包招聘的网站
  • 荆州网站建设多少钱国外网站设计理念
  • 网站备案成功后wordpress文字加框
  • 中小企业怎么优化网站西安网站建设求职简历
  • 网站开发者模式怎么打开商城网站建设特点有哪些
  • 网站登录按纽是灰色的做网站的前途怎么样
  • 常州城乡建设局网站霸榜seo
  • 网站响应样式如何制作自己的公众号
  • 网站的友情连接怎么做免费收录链接网
  • 太原网站设计排名wordpress 设置语言
  • 南京模板建站定制网站网站单页面怎么做的
  • 宁夏住房建设厅网站石家庄最新今天消息
  • 写网站软件tomcat部署wordpress
  • 怎么做下载网站吗分析一个网站
  • 网站建设禁止谷歌收录的办法做挂网站
  • 佛山优化网站公司做购物网站需要多少钱
  • 山东网站建设维护营销型网站是什么样的
  • 长沙营销网站建设苏州风险区域最新
  • 个人网站百度推广收费wordpress发邮件慢
  • 三门峡网站设计wordpress 去掉功能
  • 网站小程序开发公司wordpress 用户授权