多类生产者-消费者(进程)-操作系统

2023-05-04  本文已影响0人  热血沸腾
image.png

这里是多类生产者,生产多种商品,并且有多个消费者消费。

多类生产者和多类消费者问题


semaphore mutex =1; //盘子是临界资源 互斥
semaphore apple = 0; //同步信号量 苹果  爸爸->女儿
semaphore orange = 0; //同步信号量 橘子 妈妈->儿子
semaphore empty = 1;//同步信号量 盘子 儿子->妈妈,女儿->爸爸

father{
    准备苹果;
    P(empty);
    P(mutex);
    使用盘子,放苹果;
    V(mutex);
    V(apple);
}

daughter{
    P(apple);
    P(mutex);
    使用盘子,取苹果;
    V(mutex);
    V(empty);
    吃掉苹果;
}

mother{
    准备橘子;
    P(empty);
    P(mutex);
    使用盘子,放橘子;
    V(mutex);
    V(orange);
}

son{
    P(orange);
    P(mutex);
    使用盘子,取橘子;
    V(mutex);
    V(empty);
    吃掉橘子;
}
上一篇 下一篇

猜你喜欢

热点阅读