nodejs 中 Fork 是什么?
是什么
Fork 是 Node.js 子流程 child_process
模块提供方法执行外部应用的异步方法,调用这个方法会返回一个对象,这对象是 ChildProcess 类的实例。
怎么做
和分叉的 NodeJS 模块通信
约定:主进程标识为 father,子进程标识为 child。
father.js 代码:
var cp = require('child_process')
// 创建子进程、发子进程发一条消息;
var child = cp.fork('./child')
// 当收到子进程发来的消息时,输出消息。
child.on('message',(msg)=>{
console.log('father get msg:',msg);
})
child.send('msg from father')
child.js 代码:
// 发送一条消息给进程;
process.send('msg from child')
// 当收到父进程消息时,输出消息。
process.on('message',(msg)=>{
console.log('child get msg',msg)
})
可看到父进程和子进程互通消息成功。
注:进程间发送数据的类型不会丢失,比如发送 JSON 值,收到的也是 JSON 值,不会变成字符串。
参考文章
- 怎么做:实现方法是遇到标题就用 h1 到 h6,遇到段落用 p,遇到文章用 article,主要内容用 main,边栏用 aside,导航用 nav……(就是找到中文对应的英文)
- 解决了什么问题:明确了 HTML 的书写规范
- 优点是:一、适合搜索引擎检索;二、适合人类阅读,利于团队维护。
- 缺点是:没有。
- 怎么解决缺点:无需解决。