动图: 预解: 解锁不加延时,否则就会让两个线程循序执行了,因为延时会让 另一个阻塞在资源外面的线程得到充分响应进入资源的时间 生产者抢到信号,num初始值3 生产者的信号数量是 7 ,代表他可以循环 7 次, 直到sem_wait -- 到0,才会阻塞 但是呢, 在一个人运行的时候, 另一个人必须停在那里,等到这个人运行结束 所以 需要互斥锁!! 在【生产者】运行时, sem1--, sem++ 7 次后, sem1==0<