标签:ESS 开始 cer ddr release 没有 生产者 -- 生产者与消费者
生产者信号量producer(100);
消费者信号量consumer(0);
生产者是盛饭的,A桌子上有100个空碗就相当于有100个信号量。获得一个信号量相当于别人从桌子拿起一个碗递给他,他盛了1碗饭。A桌子总的碗数减1(A.acquire())A--。B桌子上有1碗可以吃(B.release())B++。
消费者是吃饭的,B桌子多少碗可以吃的饭就是多少个信号量,一开始B桌子上没有饭,所以他一开始的信号量为0。获得一个信号量相当于吃了1碗饭(B.acquire())B--。吃完空碗放到A桌(A.release())A++。A多了一个可以用来盛饭的碗。标签:ESS 开始 cer ddr release 没有 生产者 -- 生产者与消费者
原文地址:https://www.cnblogs.com/xpylovely/p/11546413.html