在 C 中,您可以使用创建多进程应用程序fork()
,然后可以使用 FIFO 管道进行通信。我了解到 C++ 只支持多线程应用程序,如果你想要一个多进程应用程序,你必须依赖fork()
.
但是在 C++ 中,类型检查是至关重要的,所以我不能只是通过管道传递对象而没有任何风险。您可以转换void*
并询问sizeof
并通过管道发送所有内容以将其转换回原始对象。
那么为什么感觉如此不对呢?多进程架构是否未在 C++ 中使用,或者是否有库或更好的做事方式。我用谷歌搜索了一下,你唯一找到的是多线程 C++ 或多进程 C。
想要更多进程的原因是我希望我的应用程序尽可能健壮。如果我的 Web 服务崩溃,我希望我的主进程重新启动它。没有办法执行此多线程,因为您永远不知道 1 个线程是否没有损坏另一个线程中的内存,因此如果您在一个线程中遇到错误,您必须出于安全原因重新启动。