NodeJs 和 C 子进程之间通信的最佳方式

Posted

技术标签:

【中文标题】NodeJs 和 C 子进程之间通信的最佳方式【英文标题】:Best way to communicate between NodeJs and C child process 【发布时间】:2017-11-13 07:16:57 【问题描述】:

我想在 Node.js 服务器和由 Nodejs 服务器分叉的 C 程序之间传递消息。我知道有很多可能性。 Here 是 *** 上的一个。但是,我想要尽可能轻的机制,因为服务器在开始时将一条消息传递给子进程,而子进程在最后发送一条消息。对此最轻可能的解决方案是什么?

我可以想到 TCP、UDP、管道、Unix 套接字或只是写入文件并从中读取。 TCP 套接字将是一个繁重的解决方案。

有什么建议吗?

【问题讨论】:

如果可以使用 Unix 就没有理由使用 TCP d.插座。 没有“最好”的方法。您可以选择满足您需求的多个选项中的任何一个。 stdin 和 stdout 可能是最通用的,但您也可以设置其他几种方法。 类似问题Interprocess communication between node and c applicatoin 和这个node-ipc 的模块。谷歌是你的朋友。还有很多其他的东西要读。 【参考方案1】:

一旦你产生了你的子进程p,你就可以使用p.stdin.write()通过标准输入发送它。

【讨论】:

以上是关于NodeJs 和 C 子进程之间通信的最佳方式的主要内容,如果未能解决你的问题,请参考以下文章

[ Linux ] 进程间通信介绍 管道

父子组件之间的通信

Linux 中 Python 父进程和 C 子进程之间的通信

c - 使用管道在两个子进程之间持续通信

在 C 中等待子进程终止的最佳实践

android - 在活动和后台服务之间进行通信的最佳方式