某寺庙,有小和尚、老和尚若干。有一水缸,由小和尚用水桶从井中提水入缸,老和尚用水桶从缸里取水饮用。水缸可容30桶水,水取自同一井中。水井径窄,每次只能容一个水桶取水。水桶总数为5个。每次入、取缸水仅为
生活随笔
收集整理的這篇文章主要介紹了
某寺庙,有小和尚、老和尚若干。有一水缸,由小和尚用水桶从井中提水入缸,老和尚用水桶从缸里取水饮用。水缸可容30桶水,水取自同一井中。水井径窄,每次只能容一个水桶取水。水桶总数为5个。每次入、取缸水仅为
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
和尚取水問題
某寺廟,有小和尚、老和尚若干。有一水缸,由小和尚用水桶從井中提水入缸,老和尚用水桶從缸里取水飲用。水缸可容30桶水,水取自同一井中。水井徑窄,每次只能容一個水桶取水。水桶總數為5個。每次入、取缸水僅為1桶,且不可以同時進行。試用P、V操作給出小和尚、老和尚動作的算法描述。
題目解析
代碼
semaphore mutex1=1,mutex2=1; semaphore amount=5,empty=30,full=0;void yong monk i(i=1,2,3,,,n) () {while(TRUE){P(empty);p(amount);P(mutex1);從井里打水;V(mutex1);P(mutex2);往缸里面倒水;V(mutex2);V(amount);V(full); } }void old monk i(i=1,2,3,,,n) () {while(TRUE){P(full);P(amount);P(mutex2);從缸里面取水使用;V(mutex2);V(amount);V(empty); } }void mian() {cobeginyoung monk i(i=1,2,3,,,n) ();old monk i(i=1,2,3,,,n) ();coend }總結
以上是生活随笔為你收集整理的某寺庙,有小和尚、老和尚若干。有一水缸,由小和尚用水桶从井中提水入缸,老和尚用水桶从缸里取水饮用。水缸可容30桶水,水取自同一井中。水井径窄,每次只能容一个水桶取水。水桶总数为5个。每次入、取缸水仅为的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 仿魅族日历,乐视日历,小米日历等效果
- 下一篇: w ndows无法识别usb,surfa