是Boost消息队列文件级持久性
Is Boost Message Queues file Level Persistence?
Boost消息队列文件级持久化吗?
在boost IPC文档中提到消息队列是文件级或内核级的持久性。
http://www.boost.org/doc/libs/1_38_0/doc/html/interprocess/some_basic_explanations.html所以我的问题是他们的文件级持久性意味着可以生存的重启或持续在内存中,如果我们重启也。
如果它们默认是内核级持久化,我们如何使它们成为文件级持久化?
编辑:当我注销系统并再次登录时,队列在那里并且工作正常,但当我重新启动系统时,队列已删除,我正在使用ubuntu,并希望实现一个可以在服务器崩溃时存活的队列,我该如何做到这一点?
正如文档所解释的那样,这种区别取决于实现。
有些平台将有内核支持(因此,共享IPC对象的"内核级持久性"),有些则没有:
可以看到,Boost。进程间定义了一些具有"内核或文件系统"持久性的机制。这是因为POSIX允许本地进程间通信实现这种可能性。例如,可以使用内存映射文件实现共享内存并获得文件系统持久性(例如,没有正确的已知方法可以使用本机共享内存模拟Windows共享内存的用户库的内核持久性,或者使用POSIX共享内存的进程持久性,因此唯一可移植的方法是定义"内核或文件系统"持久性)。
它是而不是你可以直接切换。
更重要的是,它可能不是您所追求的(持久性是关于对象的生命周期,而不是关于消息,AFAICT)
相关文章:
- .cpp和.h文件中的模板专用化声明
- 为什么两个不同的未命名名称空间可以共存于一个cpp文件中
- 文本文件中的单词链表
- CMake-按正确顺序将项目与C运行时对象文件链接
- 使用新行和不使用新行读取文件
- 在C++程序中输入的文本文件将不起作用,除非文本被复制和粘贴
- 挂起和取消挂起一个文件DLL
- 如何确定我已使用非编码文件到达 EOF?
- 命名空间中具有.h和.cpp文件的类
- 如何使用ndk-build.cmd构建Android.so文件
- 从包含m行的文件中提取n行,必要时(惰性地)重复该文件
- 读取文件并输入到矢量中
- 在C++中查找文件
- c++库的公共头文件中应该包含什么
- 用c++从输入文件中读取另一行
- Cppcheck生成xml转储文件
- 读取文件的最后一行并输入到链接列表时出错
- 无法编译 rtmidi 测试 cmidiin.cpp 文件, 非法指令
- 是Boost消息队列文件级持久性
- 存储在文件中的boost multi_index_container的持久性