Node.js进程管理中子进程是如何创建、通信和管理的详细机制是怎样的?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2063个文字,预计阅读时间需要9分钟。
一、理论与前期准备在深入本章内容之前,我们已经了解到这一领域涉及诸多进展。在编写Process模块的过程中,我们也多次提及。今天下午闲暇时光,静下心来好好阅读一番,发现内容并非想象中那么困难,理解起来也相对容易。
Node.js是单线程的,对于普遍存在的单线程问题,我们已有深入探讨。
一、理论
之前看多进程这一章节时发现这块东西挺多,写Process模块的时候也有提到,今天下午午休醒来静下心来好好的看了一遍,发现也不是太难理解。
Node.js是单线程的,对于现在普遍是多处理器的机器是一种浪费,怎么能利用起来呢?于是child_process模块出现了。child_process模块可以在其他进程上产生、派生,并执行工作。
child_process模块提供了一个ChildProcess的新类,它可以作为从父进程访问子进程的表示形式。Process模块也是ChildProcess对象。当你从父模块访问process时,它是父ChildProcess对象,当你从子进程访问Process是,它是ChildProcess对象
了解一个对象无外乎事件、方法、属性。ChildProcess也是一样。下面列出一些常用的事件、方法和属性。
事件:
message:当ChildProcess对象调用send()方法来发送数据时触发。
error:在工作进程中出现错误时发出。该处理程序接收一个错误对象作为唯一的参数。
exit:当工作进程结束时发出。该处理程序接收两个参数,code,signal.
close:当工作进程的所有stdio流都已经终止的时候发出。与exit不同的是,因为多个进程可以共享相同的stdio流。
本文共计2063个文字,预计阅读时间需要9分钟。
一、理论与前期准备在深入本章内容之前,我们已经了解到这一领域涉及诸多进展。在编写Process模块的过程中,我们也多次提及。今天下午闲暇时光,静下心来好好阅读一番,发现内容并非想象中那么困难,理解起来也相对容易。
Node.js是单线程的,对于普遍存在的单线程问题,我们已有深入探讨。
一、理论
之前看多进程这一章节时发现这块东西挺多,写Process模块的时候也有提到,今天下午午休醒来静下心来好好的看了一遍,发现也不是太难理解。
Node.js是单线程的,对于现在普遍是多处理器的机器是一种浪费,怎么能利用起来呢?于是child_process模块出现了。child_process模块可以在其他进程上产生、派生,并执行工作。
child_process模块提供了一个ChildProcess的新类,它可以作为从父进程访问子进程的表示形式。Process模块也是ChildProcess对象。当你从父模块访问process时,它是父ChildProcess对象,当你从子进程访问Process是,它是ChildProcess对象
了解一个对象无外乎事件、方法、属性。ChildProcess也是一样。下面列出一些常用的事件、方法和属性。
事件:
message:当ChildProcess对象调用send()方法来发送数据时触发。
error:在工作进程中出现错误时发出。该处理程序接收一个错误对象作为唯一的参数。
exit:当工作进程结束时发出。该处理程序接收两个参数,code,signal.
close:当工作进程的所有stdio流都已经终止的时候发出。与exit不同的是,因为多个进程可以共享相同的stdio流。

