一个进程创建一块共享内存,我希望此进程退出时,操作系统不回收这块共享内存,可以做到吗?

好堤 2014-03-26 04:54:59
因为,可能有很多进程使用这个共享内存。

我希望,在所有使用这块共享内存的进程中,最后一个退出时,才允许操作系统回收这块共享内存。


能做到吗?


或者不用共享内存?


总之,我需要一个公共块,去存储一些信息,很多进程都会用到这些信息。

直到所有这些进程都退出,才允许销毁这个公共块。

大概就是这个意思了。
...全文
484 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
好堤 2014-03-26
  • 打赏
  • 举报
回复
原来是酱紫。
引用 4 楼 neustar1 的回复:
[quote=引用 2 楼 u013627061 的回复:] 有没有例子啊? [quote=引用 1 楼 neustar1 的回复:] [quote=引用 楼主 u013627061 的回复:] 因为,可能有很多进程使用这个共享内存。 我希望,在所有使用这块共享内存的进程中,最后一个退出时,才允许操作系统回收这块共享内存。 能做到吗? 或者不用共享内存? 总之,我需要一个公共块,去存储一些信息,很多进程都会用到这些信息。 直到所有这些进程都退出,才允许销毁这个公共块。 大概就是这个意思了。
可以的,共享内存可以做到 [/quote][/quote]不用例子吧,你第一个进程创建共享内存,后续的内存都打开该共享内存,这样的话前面进程退出就不会删掉共享内存,就实现了你的目的啊。[/quote]
__cc__ 2014-03-26
  • 打赏
  • 举报
回复
引用 2 楼 u013627061 的回复:
有没有例子啊? [quote=引用 1 楼 neustar1 的回复:] [quote=引用 楼主 u013627061 的回复:] 因为,可能有很多进程使用这个共享内存。 我希望,在所有使用这块共享内存的进程中,最后一个退出时,才允许操作系统回收这块共享内存。 能做到吗? 或者不用共享内存? 总之,我需要一个公共块,去存储一些信息,很多进程都会用到这些信息。 直到所有这些进程都退出,才允许销毁这个公共块。 大概就是这个意思了。
可以的,共享内存可以做到 [/quote][/quote]不用例子吧,你第一个进程创建共享内存,后续的内存都打开该共享内存,这样的话前面进程退出就不会删掉共享内存,就实现了你的目的啊。
zhuobattle 2014-03-26
  • 打赏
  • 举报
回复
要不怎么叫共享内存呢?你只要HANDLE没有全部释放掉。
好堤 2014-03-26
  • 打赏
  • 举报
回复
有没有例子啊?
引用 1 楼 neustar1 的回复:
[quote=引用 楼主 u013627061 的回复:] 因为,可能有很多进程使用这个共享内存。 我希望,在所有使用这块共享内存的进程中,最后一个退出时,才允许操作系统回收这块共享内存。 能做到吗? 或者不用共享内存? 总之,我需要一个公共块,去存储一些信息,很多进程都会用到这些信息。 直到所有这些进程都退出,才允许销毁这个公共块。 大概就是这个意思了。
可以的,共享内存可以做到 [/quote]
__cc__ 2014-03-26
  • 打赏
  • 举报
回复
引用 楼主 u013627061 的回复:
因为,可能有很多进程使用这个共享内存。 我希望,在所有使用这块共享内存的进程中,最后一个退出时,才允许操作系统回收这块共享内存。 能做到吗? 或者不用共享内存? 总之,我需要一个公共块,去存储一些信息,很多进程都会用到这些信息。 直到所有这些进程都退出,才允许销毁这个公共块。 大概就是这个意思了。
可以的,共享内存可以做到

64,691

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧