共享内存和字符串:托管?

时间:2010-01-17 16:28:23

标签: string boost managed shared-memory boost-interprocess

我在共享内存中遇到boost::interprocess::string问题。

当我使用shared_memory_object时,我可以操纵具有不同字段的结构,但是字符串(我得到分段错误)。
另一方面,当我使用managed_shared_memory时,一切都很好。

我做错了吗?你知道使用managed_shared_memory是否存在性能损失吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

要在boost进程中使用字符串,请参阅this question

至于性能,它应该比大多数其他解决方案更好 - 这就是它存在的原因 - 在进程之间共享内存。在进程之间共享数据的每个其他方法都会产生共享内存不需要的开销(TCP的数据包头+ IO,数据库的DB往返等)