posts - 26, comments - 2, trackbacks - 0, articles - 0
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

[导入]共享内存

Posted on 2009-06-18 14:38 小夜 阅读(355) 评论(0)  编辑 收藏 引用 所属分类: [61] Linux[04] 程序设计[51] C&C++
进程间通信知识了解不少,今天第一次正式使用,就出问题了。 看看共享内存的原理,操作系统把一块公共的内存区域,映射到进程内存空间中,但映射的内存地址并不能保证映射后的地址一致性(其实一致的可能性很小,基本没有成功过),而此处array执行的地址为创建共享内存进程中正确的数组地址,在新的进程中就不对了。 因此在共享内存中,需要慎重使用指针变量。对于本文中的问题修改很简单,删除int *array,每次使用结构的地址跳过这些额外信息即可,可通过下面的宏函数得到数据域的指针。
文章来源:http://blog.csdn.net/volant_hoo/archive/2009/05/11/4169093.aspx

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理