社区
Delphi
帖子详情
为什么两个进程同时创建的内存映射对象Handle值不一样?
wintergoes
2009-05-19 10:00:03
我在两个进程里同时创建了一个同名的内存映射对象,但是他们返回的Handle值不一样,为什么/
MapViewHandle := CreateFileMapping(Dword(-1), nil, PAGE_READWRITE, 0, SizeOf(TMapViewDataItem), 'MAP_VIEW_TEST');
两个进程里都是用上面这一句代码创建的,返回的MapViewHandle不同
...全文
131
1
打赏
收藏
为什么两个进程同时创建的内存映射对象Handle值不一样?
我在两个进程里同时创建了一个同名的内存映射对象,但是他们返回的Handle值不一样,为什么/ MapViewHandle := CreateFileMapping(Dword(-1), nil, PAGE_READWRITE, 0, SizeOf(TMapViewDataItem), 'MAP_VIEW_TEST'); 两个进程里都是用上面这一句代码创建的,返回的MapViewHandle不同
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
僵哥
2009-05-19
打赏
举报
回复
Handle值是不一定重复的,全局Handle值是需要保证唯一的。
内存映射
文件实现
进程
间通信
在Windows平台中,常见的
进程
间通信机制包括管道、socket、WM_COPYDATA、邮槽等,这些在同一台机器上实现共享数据的最底层机制就是
内存映射
文件,如果要求低开销和高性能,
内存映射
文件无疑是最佳选择。
创建
一个...
Windows
进程
间通信--共享
内存映射
文件(FileMapping)
虽然是通过物理文件,交互数据的,但是ZJ是虚拟文件的名字,该名字必须在
两个
进程
中都能认识,才可以通过它来交互数据。//通过映射后,该指针就指向该文件。
进程
间通信的方法有很多,使用的条件也不太一样,有些必须...
进程
间通信:通过
内存映射
文件实现高效数据共享
内存映射
文件是一种允许
进程
将磁盘上的文件
对象
映射到其内存地址空间的技术。通过这种映射,文件的内容就可以像访问内存一样进行读写操作,而无需使用文件I/O函数。这种机制对于处理大型文件和需要多个
进程
共享数据...
Windows环境
进程
间通信(三)
内存映射
文件
内存映射
文件是通过
两个
或多个
进程
映射同一个文件映射
对象
的视图来实现的,这意味着它们将共享物理存储器的同一个页面。 因此,当一个
进程
将数据写入一个共享文件映射
对象
的视图时,其他
进程
可以立即看到它们视图中...
用
内存映射
文件实现
进程
间通信
由于
内存映射
文件的一致性,即系统保证在同一文件映射
对象
的多个视图间保持一致。这可以作为
进程
通讯的基础,而且在Windows上,同一台机器上共享数据的最底层机制都是
内存映射
文件。 许多应用程序会在运行过程...
Delphi
5,932
社区成员
262,939
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章