写nodejs,进程通信,在命令行输入信息,脚本2向脚本1发送信息,脚本1给脚本2发送结果
时间: 2023-10-07 21:14:12 浏览: 55
两个进程间的消息通信
可以使用Node.js的Child Process模块和IPC(进程间通信)来实现进程间通信。下面是一个简单的例子:
脚本1(server.js):
```javascript
const { fork } = require('child_process');
const child = fork('client.js');
child.on('message', (msg) => {
console.log(`Received message from client: ${msg}`);
child.send(`Hello from server: ${msg}`);
});
```
脚本2(client.js):
```javascript
process.stdin.on('data', (data) => {
process.send(data.toString().trim());
});
process.on('message', (msg) => {
console.log(`Received message from server: ${msg}`);
});
```
在命令行中运行server.js,然后输入一些信息,可以看到脚本2向脚本1发送信息,并且脚本1给脚本2发送结果。
注意:使用Child Process模块创建的子进程是独立的Node.js进程,它们可以通过IPC进行通信,但它们不能共享变量或函数。如果需要共享变量或函数,可以使用共享内存或消息队列等其他IPC方式。
阅读全文