共享内存 (也叫内存映射文件) 主要是通过映射机制实现的 , Windows 下进程的地址空间在逻辑上是相互隔离的 , 但在物理上却是重叠的 ; 所谓的重叠是指同一块内存区域可能被多个进程同时使用 ,

当调用 CreateFileMapping 创建命名的内存映射文件对象时 , Windows 即在物理内存申请一块指定大小的内存区域 , 返回文件映射对象的句柄 hMap ;

为了能够访问这块内存区域必须调用 MapViewOfFile 函数 , 促使 Windows 将此内存空间映射到进程的地址空间中 ;

当在其他进程访问这块内存区域时 , 则必须使用 OpenFileMapping 函数取得对象句柄 hMap , 并调用 MapViewOfFile 函数得到此内存空间的一个映射 , 这样系统就把同一块内存区域映射到了不同进程的地址空间中 , 从而达到共享内存的目的.

https://blog.csdn.net/tojohnonly/article/details/70246965

https://www.cnblogs.com/me115/archive/2013/01/07/2848567.html

https://www.jianshu.com/p/56efa9d1500a

booK

https://www.amazon.cn/dp/B00ETOV2OQ/ref=sr_1_fkmr2_1?__mk_zh_CN=%E4%BA%9A%E9%A9%AC%E9%80%8A%E7%BD%91%E7%AB%99&keywords=c%2B%2B+%E5%85%B1%E4%BA%AB%E5%86%85%E5%AD%98&qid=1564646975&s=books&sr=1-1-fkmr2

最新文章

  1. Intro to CSS 3D transforms
  2. 每天一个linux命令(3):pwd命令
  3. Scala的下一步
  4. ASP.NET Web API 上传文件
  5. nodejs express template (模版)的使用 (ejs + express)
  6. 在为知笔记中使用JQuery
  7. DedeCMSV57数据库结构文档
  8. codeforces 161D Distance in Tree 树形dp
  9. 《JavaScript DOM编程艺术》
  10. DataTable的新建、查询、添加和修改
  11. uclibc,eglibc,glibc之间的区别和联系
  12. 页面资源预加载(Link prefetch)功能加速你的页面加载速度
  13. Spring4.0学习笔记(3) —— Spring_Bean之间的关系
  14. nginx启动、开机自启动、重启、关闭
  15. angularjs执行流程
  16. 学习git之路--1
  17. springcloud实战案例苏宁和海信
  18. 从零开始学 Web 之 CSS3(五)transform
  19. Eclipse workspace 被占用问题
  20. POJ 2771

热门文章

  1. scala 学习笔记--模式匹配
  2. Splay&LCT
  3. SpringCloud断路器(Hystrix)和服务降级案列
  4. Vuejs基本使用
  5. [RN] React Native 再按一次退出
  6. 插入排序;至少要比较N(N-1)/2次;N表示元素个数
  7. luoguP1742 最小圆覆盖
  8. 洛谷p2330繁忙的都市题解
  9. 切比雪夫定理(Chebyshev's theorem)与经验法则(Empirical Rule)
  10. 洛谷1169 [ZJOI2007] 棋盘制作