題目:桌上有一空盤,最多允許存放相同的兩隻水果。爸爸每次可向盤中放乙個蘋果或放乙個桔子,兒子專等吃盤中的桔子,女兒專等吃蘋果。
試用p、v操作實現爸爸、兒子、女兒三個併發程序的同步。
重點分析爸爸的程序:
最多只能放兩個水果
放蘋果與放桔子互斥,但是多個放蘋果操作之間不互斥
同理放桔子與放蘋果互斥,多個放桔子操作之間不互斥
以下為我基於上面邏輯的偽**,還未考慮周全是否會有死鎖情況。 0
;//女兒吃蘋果訊號
orange=0;
//兒子吃桔子訊號
fruit=2;
//盤子空訊號為2(限定最多放兩個水果)
//以下為放水果時,放蘋果和放桔子互斥訊號量 1;
orangemutex=1;
0;//正在放的蘋果數量
int orangecount=0;
//正在放的桔子數量
void
father()
if(想放桔子)
}while
(true)
}void
son(
)while
(true);}
void
daugther()
while
(true);}
void
main()
while
(true)
}
數字水印學習系統之一 空域操作
登記號 分類號 軟體全稱 軟體簡稱 版本號 著作權人 國籍 首次發表日期 登記批准日期 2009sr038176 68000 8400 數字水印學習系統 water v 1.0 中國 2009 09 09 空域操作主要在空域範圍內針對數字影象進行有關操作,具體操作內容及方法如下 分層顯示,顯示數字影...
普及一下酒桌上的規矩
昨晚和一些朋友們喝酒,行酒之間頗有感慨。敬酒和勸酒是酒桌上常見的事情,任何事情都有它的規律在裡面。從生活瑣事到企業管理都一樣,當然也包括喝酒了。我喝酒的歷史有很長了,大約有二十多年的酒齡。這裡首先倚老賣老一番,給不喝酒的朋友普及一下酒桌上的規矩,同時和喝酒的朋友交流一下心得體會。酒桌上不碰杯是不正常...
普及一下酒桌上的規矩
昨晚和一些朋友們喝酒,行酒之間頗有感慨。敬酒和勸酒是酒桌上常見的事情,任何事情都有它的規律在裡面。從生活瑣事到企業管理都一樣,當然也包括喝酒了。我喝酒的歷史有很長了,大約有二十多年的酒齡。這裡首先倚老賣老一番,給不喝酒的朋友普及一下酒桌上的規矩,同時和喝酒的朋友交流一下心得體會。酒桌上不碰杯是不正常...