boost::interprocess::string
我在共享内存中 有问题。
当我使用 a 时,shared_memory_object
我可以操纵具有不同字段的结构,但字符串(我得到一个分段错误)。
另一方面,当我使用managed_shared_memory
一切都很好。
难道我做错了什么?你知道使用 是否有性能损失managed_shared_memory
?
谢谢!
boost::interprocess::string
我在共享内存中 有问题。
当我使用 a 时,shared_memory_object
我可以操纵具有不同字段的结构,但字符串(我得到一个分段错误)。
另一方面,当我使用managed_shared_memory
一切都很好。
难道我做错了什么?你知道使用 是否有性能损失managed_shared_memory
?
谢谢!
要在 boost 进程间使用字符串,请参阅这个问题。
至于性能,它应该比大多数其他解决方案更好——这就是它存在的原因——在进程之间共享内存。在进程之间共享数据的所有其他方法都会产生共享内存不需要的开销(TCP 的数据包头 + IO,DB 的 DB 往返等)