Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1869180
  • 博文数量: 217
  • 博客积分: 4362
  • 博客等级: 上校
  • 技术积分: 4180
  • 用 户 组: 普通用户
  • 注册时间: 2009-09-20 09:31
文章分类

全部博文(217)

文章存档

2017年(1)

2015年(2)

2014年(2)

2013年(6)

2012年(42)

2011年(119)

2010年(28)

2009年(17)

分类: C/C++

2011-08-09 08:56:20

同步:
相互合作的两个进程之间需要在某个(些)确定点协调它们的工作,一个进程到达了该点后,除非另一进程已经完成了某些操作,否则就不得不停下来,等待这些操作的完成。这就是进程间的同步。

互斥:
两个进程由于不能同时使用同一临界资源,只能在一个进程使用完了,另一进程才能使用,这种现象称为进程间的互斥。

特征:
①同步的主要特征是:一个进程在某一点上等待另一进程提供信息,两进程之间存在直接制约关系,其表现形式为进程—进程。
②互斥的主要特征是争用资源,两进程间存在间接制约关系,其表现形式是进程—资源—进程

就拿生产者-消费者模型来说吧,对于只有一个生产者和一个消费者的时候,生产者生产东西,给缓冲区写数据,消费者从缓冲区读取数据,消费者必须在生产者之后进行,这个时候就是一种同步的关系。
另外,如果有许多生产者和消费者的时候,就生产者之间是一种互斥的关系,这个时候使用互斥信号量mutex进行,因为它们之间都可以进行访问,就看它们的互斥结果了。
阅读(1192) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~