当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Node.js Process message用法及代码示例


‘message’ 是进程模块中的 Process 类的事件,每当子进程接收到父进程使用 childprocess.send() 发送的消息时,就会发出该事件。

用法:

Event:'message'

参数:此事件不接受任何参数作为参数。

返回值:此事件只返回回调函数以进行进一步的操作。

范例1:

文件名是 index.js

Javascript


// Node.js program to demonstrate the 
// Process 'message' Event
// Importing process module
const cp = require('child_process');
// Initiating child process
const process = cp.fork(`${__dirname}/sub.js`);
// Causes the child to print:
// CHILD got message:{ hello:'world' }
process.send({ hello:'world' });

这里的文件名是 sub.js

Javascript


// Importing process module
const process = require('process');
// Message Event
process.on('message', (m) => {
    console.log('CHILD got message:', m);
    process.exit(0)
});


使用以下命令运行index.js文件:

node index.js

输出:

CHILD got message:{ hello:'world' }

范例2:

文件名是 index.js

Javascript


// Node.js program to demonstrate the 
// Process 'message' Event
// Importing process module
const cp = require('child_process');
// Initiating child process
const process = cp.fork(`${__dirname}/sub.js`);
// Message Event
process.on('message', (m) => {
    console.log('PARENT got message:', m);
});
// Causes the child to print:
// CHILD got message:{ hello:'world' }
process.send({ hello:'world' });

这里的文件名是 sub.js

Javascript


// Importing process module
const process = require('process');
// Message Event
process.on('message', (m) => {
    console.log('CHILD got message:', m);
    process.exit(0)
});
// Causes the parent to print:
// PARENT got message:{ foo:'bar', baz:null }
process.send({ foo:'bar', baz:NaN });

使用以下命令运行index.js文件:

node index.js

输出:

CHILD got message:{ hello:'world' }
PARENT got message:{ foo:'bar', baz:null }

参考: https://nodejs.org/dist/latest-v16.x/docs/api/process.html#process_event_message


相关用法


注:本文由纯净天空筛选整理自RohitPrasad3大神的英文原创作品 Node.js Process message Event。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。