1

要让一组进程进行通信,它们之间的优缺点是什么:

  1. RAM磁盘
  2. 促进进程间通信

RAM 磁盘允许与仅使用文件的程序进行通信。

由于要复制的文件系统接口,RAM 磁盘的性能损失有多大?

4

2 回答 2

1

这是一个错误的二分法。

如果您通过以下方式共享

  • RAM 磁盘上的文件 - 您仍在使用内存映射文件(已实现 Boost Interprocess)
  • 命名管道(unix 上的 FIFO)您仍在使用 IPC(因为管道或套接字对是 IPC 原语)。

您不能/避免/ IPC 通过使用 RAM 磁盘。

事实上,它会发出警报信号,因为听起来你假设它会以某种方式使用 RAM 磁盘“更简单”。在实践中,如果您不进行适当的锁定,它只会更简单。不过,这只是错误的来源。

于 2014-03-10T14:42:51.323 回答
0

如果您想知道性能损失,我认为您可以进行一些测试,因为我认为您的解决方案并不常见。

无论如何,如果您希望两个进程使用某种类型的进程间通信基础设施进行通信,请使用 boost 提供的,因为它旨在做您想做的事情,它不需要额外的基础设施,而且它实际上跨平台移植性太强.

于 2014-03-10T13:47:27.320 回答