OSshengchanzhexiaofeizhe

所属分类:系统编程
开发工具:Visual C++
文件大小:2KB
下载次数:24
上传日期:2008-06-25 08:55:46
上 传 者gjg0423
说明:  “生产者-消费者”的问题是进程互斥中一个著名的案例。 抽象背景:生产者和消费者共享一个缓冲区: 当生产者快时,保证不会有数据遗漏消费; 当消费者快时,保证不会有数据未产生就被消费; 此问题要求解决如下并发需求: 互斥:任一时刻仅有一个生产者或消费者访问缓冲区 同步:缓冲区满时生产者等待,缓冲区空时消费者等待 大概意思是:有一个有限缓冲区和两类线程,它们是生产者和消费者,生产者把产品放入缓冲区,相反消费者便是从缓冲区中拿走产品。 生产者在缓冲区满时必须等待,直到缓冲区有空间才继续生产;消费者在缓冲区空时必须等待,直到缓冲区中有产品才能继续读取。 我们可以看到,这里存在潜在的竞争条件,所谓竞争条件就是这样一种情况:多个线程对数据产生的作用要依赖于线程的调度顺序的。当两个线程竞相访问同一数据时,就会发生竞争条件。由于时间片的原因,一个线程可以在任意一个时刻打断其他线程,因此数据可能会被破坏或者被错误地解释。
(err)

文件列表:
OS课设源程序.cpp (5242, 2007-07-01)

近期下载者

相关文件


收藏者