求高手解释:不要通过共享内存来通信,而是通过通信来共享内存

Kerrie 2011-03-05 04:16:38
如标题所说,在同步开发中提到的,有哪位高手有亲身经历的吗,请解释解释。
...全文
301 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
lizhibin11 2011-03-05
  • 打赏
  • 举报
回复
换言之就是视目的而定,假若要通信,就采取通信的方式,而不要采取共享内存这种方式;
假若要共享内存,那么必须以通信的方式来防止同步问题发生。
lizhibin11 2011-03-05
  • 打赏
  • 举报
回复
我来解释一下看看对不对
“不要通过共享内存来通信”
——假若以共享内存来代替进程间的通信,一个读一个写,读的进程可能会采取计时器等方式来读取共享内存的内容,但是读的进程无法确定写的进程已经写入完毕还是正在写入,假如正在写入,那么就有可能读到不完整的或者错误的数据。
“通过通信来共享内存”
——为了防止共享内存读写的这种同步问题出现,读的进程不应该采取计时器的方式,而是写的进程写入共享内存的前后,通过窗体消息或者管道或者socket等方式向写的进程分别发送写前和写后的简单的通知消息,读的进程收到消息后,再去读取,并回发读前和读后的消息,以通知写进程什么时候可以写入。
dianyancao 2011-03-05
  • 打赏
  • 举报
回复
两个说的一个内容,谁也离不开水
yidongliange4 2011-03-05
  • 打赏
  • 举报
回复
前半句是多线程/多进程通信的一种方式
后半句我也看不懂了
healer_kx 2011-03-05
  • 打赏
  • 举报
回复
WM_COPYDATA了解吗?

7,540

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 VC.NET
社区管理员
  • VC.NET社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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