0
如何定義與忙等待解決一個信號??我有這樣的事情如何定義一個信號量與忙等待解決方案
wait(Semaphore s){
s=s-1;
if (s<=0) {
// add process to queue
block();
}
}
signal(Semaphore s){
s=s+1;
if (s<0) {
// remove process p from queue
wakeup(p);
}
}
,但我不明白,在信號塊所需的條件
(s)if(s < 0){ //從隊列中刪除進程p 喚醒(p); }
爲什麼我們要檢查,如果(一個或多個< 0)這裏