第2章-进程和线程.pptVIP

  • 3
  • 0
  • 约8.39千字
  • 约 89页
  • 2019-08-10 发布于广东
  • 举报
* 1.生产者-消费者问题 1.设缓冲区的编号为0~N-1,in和out分别是生产者进程和消费者进程使用的指针,指向下面可用的缓冲区,初值都是0。 2.设置三个信号量: full:表示放有产品的缓冲区数,其初值为0。 empty:表示可供使用的缓冲区数,其初值为N。 mutex:互斥信号量,初值为1,表示各进程互斥进入临界区,保证任何时候只有一个进程使用缓冲区。 * 1.生产者-消费者问题 生产者进程Producer: 消费者进程Consumer: while(TRUE) { while(TRUE){ P(empty); P(full); P(mutex); P(mutex); 产品送往buffer(in); 从buffer(out)中取出产品; in=(in+1)mod N; out=(out+1)mod N; /*以N为模*/ /*以N为模*/ V(mutex); V(mutex); V(full); V(empty); } }

文档评论(0)

1亿VIP精品文档

相关文档