由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 请问关于 share memory 的问题
相关主题
请问用mmap分配的共享内存如何回收?寻找一个allocator 做一个指定内存空间内的 alloc/free
map shared memory to local process请教关于C++内存管理
求教:c++中如何从raw data中创建对象?Java马工说c++内存泄漏,哥只能呵呵了
程序占用很大内存有没有大牛给讲下javascript的内存泄漏
突然发现现在很反感malloc了如何在c++里面得到程序到底试用了多少内存?
C++中释放的内存可能立即返回系统吗?C++程序如何处理内存分块?
有没有这样的memory management library?晕了,多线程,共享内存的问题
请问释放容器内存的方法新手请问用mmap() copy file
相关话题的讨论汇总
话题: 共享内存话题: 程序话题: windows话题: 请问话题: 问题
进入Programming版参与讨论
1 (共1页)
z*******6
发帖数: 133
1
想在 windows 下处理共享内存的问题,用了 createFileMapping. 可以在不同程序间
共享数据 (比如 程序A 和B)。 请问有没有可能在 A和 B 都退出后仍然保留共享内
存的数据,这样下一次运行程序A 或B 时就不用在创建共享内存。(处理大数据)
X****r
发帖数: 3557
2
另外写一个小程序C来负责创建共享内存,A或B启动它,C本身不退出。

【在 z*******6 的大作中提到】
: 想在 windows 下处理共享内存的问题,用了 createFileMapping. 可以在不同程序间
: 共享数据 (比如 程序A 和B)。 请问有没有可能在 A和 B 都退出后仍然保留共享内
: 存的数据,这样下一次运行程序A 或B 时就不用在创建共享内存。(处理大数据)

z*******6
发帖数: 133
3
有没有别的办法啊?
b******n
发帖数: 592
4
boost有个interprocess库可以做这个。我是在Linux上用的,你可以去看看windows到
底能不能实现,linux低下没有问题的。创建共享内存不难啊,我觉得退出以后清除是
比较安全的做法。linux下只有下次重启的时候才会自动清除(当然,你可以有个helper
程序来做清除)

【在 z*******6 的大作中提到】
: 想在 windows 下处理共享内存的问题,用了 createFileMapping. 可以在不同程序间
: 共享数据 (比如 程序A 和B)。 请问有没有可能在 A和 B 都退出后仍然保留共享内
: 存的数据,这样下一次运行程序A 或B 时就不用在创建共享内存。(处理大数据)

z*******6
发帖数: 133
5
you get the point, linux 下用了 shm/ipc
我在 porting 到 windows, 就是这个共享内存自动清除问题还没有解决,如果开一个
进程专门管理,程序结构就要改动,想看看有没有办法解决,不然
只能这样了

helper

【在 b******n 的大作中提到】
: boost有个interprocess库可以做这个。我是在Linux上用的,你可以去看看windows到
: 底能不能实现,linux低下没有问题的。创建共享内存不难啊,我觉得退出以后清除是
: 比较安全的做法。linux下只有下次重启的时候才会自动清除(当然,你可以有个helper
: 程序来做清除)

s******e
发帖数: 431
6
不能map到一个文件吗?程序退出后,page到文件。程序启动再map到内存。可能不满足
你的需求。

【在 z*******6 的大作中提到】
: you get the point, linux 下用了 shm/ipc
: 我在 porting 到 windows, 就是这个共享内存自动清除问题还没有解决,如果开一个
: 进程专门管理,程序结构就要改动,想看看有没有办法解决,不然
: 只能这样了
:
: helper

b******n
发帖数: 592
7
boost的 windows实现保证了跟Unix一样的结果,但是不是通过ipc。windows的ipc在最
后一个process detach之后会自动destory,不用另外清除。
我最开始用了shm,后来就完全放弃了,因为shm太麻烦,用mmap要方便,也安全很多。

【在 z*******6 的大作中提到】
: you get the point, linux 下用了 shm/ipc
: 我在 porting 到 windows, 就是这个共享内存自动清除问题还没有解决,如果开一个
: 进程专门管理,程序结构就要改动,想看看有没有办法解决,不然
: 只能这样了
:
: helper

U********d
发帖数: 577
8
用正常的方式应该不行。
顶2楼的方法。

【在 z*******6 的大作中提到】
: 想在 windows 下处理共享内存的问题,用了 createFileMapping. 可以在不同程序间
: 共享数据 (比如 程序A 和B)。 请问有没有可能在 A和 B 都退出后仍然保留共享内
: 存的数据,这样下一次运行程序A 或B 时就不用在创建共享内存。(处理大数据)

1 (共1页)
进入Programming版参与讨论
相关主题
新手请问用mmap() copy file突然发现现在很反感malloc了
"brk()" 和 mmap() 有什么区别? (转载)C++中释放的内存可能立即返回系统吗?
奇怪的问题:关于一个简单的malloc()小程序 (转载)有没有这样的memory management library?
怎样读一个不断更新的文件请问释放容器内存的方法
请问用mmap分配的共享内存如何回收?寻找一个allocator 做一个指定内存空间内的 alloc/free
map shared memory to local process请教关于C++内存管理
求教:c++中如何从raw data中创建对象?Java马工说c++内存泄漏,哥只能呵呵了
程序占用很大内存有没有大牛给讲下javascript的内存泄漏
相关话题的讨论汇总
话题: 共享内存话题: 程序话题: windows话题: 请问话题: 问题