gistfile1.txt node 进程和子进程为了实现多线程,node,提供了child_process 和 cluster模块,child_process 用于实现,在node应用程序中开启多个子进程,并在各个子进程中,运行不同的命令或者执
node 进程和子进程
为了实现多线程,node,提供了child_process 和 cluster模块,
child_process 用于实现,在node应用程序中开启多个子进程,并在各个子进程中,运行不同的命令或者执行模块文件,
可以执行文件的处理,
cluster 模块用于实现在开启多个子进程,并在紫禁城中处理副本程序
process对象代表nodejs应用程序,该对象可以在任何模块中进行访问,这个对象可以用来获取用用程序,的用户,运行环境的各种属性,方法,事件,
execPath 这个属性值用来表示应用程序的可执行文件的绝对路劲,
verson nodejs的版本号
versons 表示nodejs版本号以及依赖的版本号
platform 当前node运行的平台
stdio 属性值是哟个可用于读取的输入流的对象
stdout 标准输出流的对象
stderr 一个标准的错误输出的流对象
argv 属性值是一个数组 参数1 node 参数二 脚本的饿名字 第三个开始是他的执行的命令参数
env 当前node应用程序操作系统的信息
config 可以用来当前文件执行的描述
pid 当前node应用程序的进程pid
arch 当前运行node程序的处理器的架构
eg:process.stdin process.stdout
// 开启等待输入
process.stdin.resume()
// 添加回调函数监听数据
proces.stdin.on('data', function(chunk){
process.stdout.write('接受到的数据', chunk)
})
proccess 的方法
memoryUsage 获取内存的使用量
该方法返回一个对象
rss 整数,当前node应用程序的内存消耗量
heapTotal v8 所分配的内存量
heapUsed v8 内存的消耗量
nextTick
可以用来将一个函数推迟到所编写的一个异步事件的回调函数开始执行时候调用,
因此可以使用nextTick 指定两个耗时的同步操作,
创建多进程的应用程序
child_process 模块来实现多进程,在主进程开启之后,可以开启多个子进程,在多个子进程中可以共享内存空间,可以通过子进程至今的相互通信来实现信息的交换
也可以通过共享端口的方式将请求分配给多个子进程进行执行。
使用spawn 方法开启子进程(在node中有多个开启子进程的方法)
child.process.spawn(command, [args, [options]])
command: 必填参数用于指定运行时需要饿命令,
args:存放执行这个命令运行所需要的参数,如果不适应默认是一个数组
options:是一个对象,指定开启子进程使用的选项,在这个对象中可以指定一下的值
cwd 一个字符串 当前进程工作的子目录可以使用相对路径或者是绝对路径
