ram磁盘vs Boost进程间通信
RAM-disk vs Boost interprocess communication
要让一组进程进行通信,它们之间的优缺点是什么:
- ram磁盘
- Boost进程间通信
ram磁盘允许与只使用文件的程序通信。
由于要复制的文件系统接口,ram磁盘的性能损失有多大?
这是一个错误的二分法。
如果你通过
分享- 文件在ram磁盘上-你仍然使用内存映射文件(实现Boost Interprocess)
- 命名管道(unix上的FIFO)您仍然使用IPC(因为管道或套接字对是IPC原语)。
你不能通过使用RAM磁盘/避免/IPC。
事实上,它发送警报信号,因为它听起来像你假设它会以某种方式"更简单"使用RAM磁盘。在实践中,只有在不进行适当的锁定时才会更简单。但是,这只是bug的一个来源。
如果您想知道性能损失,我认为您可以做一些测试,因为我认为您的解决方案并不常见。
无论如何,如果您希望两个进程使用某种类型的进程间通信基础设施进行通信,请使用boost提供的,因为它是为您想要做的事情而设计的,它不需要额外的基础设施,而且它实际上是跨平台的便携性。
相关文章:
- 进程间通信堆内存
- Win32 进程间通信分配
- Electron应用程序和Win32本机桌面应用程序之间的进程间通信
- 进程间通信 - C# 和C++.对路径的访问被拒绝
- 基于pthread_mutex的进程间通信不起作用
- Python和C++之间使用本地文件套接字的进程间通信
- 如何在进程间通信中获取其他终结点的进程 ID
- 使用物理文本文件的进程间通信
- Mac 上高带宽数据流最有效的进程间通信方法是什么?
- 进程间通信 -- 在共享内存中锁定互斥体
- 进程间通信 CUDA
- 使用COM在Windows上的本地计算机上进行进程间通信
- 具有进程间通信功能的服务器-客户端日志记录体系结构.你知道解决方案吗?
- 是否有在C++和Javascript中实现的高级进程间通信API
- 在 Windows 上的 C++ 中实现强大、简单(且快速)的进程间通信
- Boost::asio,共享内存和进程间通信
- DBus和其他进程间通信方法的区别
- Mac OS X等效于CreateEvent(),带有用于进程间通信的命名对象
- 32位- 64位进程间通信
- ram磁盘vs Boost进程间通信