Semaphore信号量主要用于两个目的(作用)
- 一个是用于多个共享资源的互斥使用
- 另一个用于并发线程数的控制。
第一个特性通常体现在多个线程可以并发的使用这些资源,但是资源数是固定的,可能无法让所有线程占有
第二个提醒体现在资源数是固定的,只能被同样数量的线程所占用,其他线程只能等待资源被释放
这里举个社区抢车位的栗子 设有六个车子,两个车位,则两个车位只能被两个车子占有,其他车子只能等待已占有车位的车子不再占有.
代码实例
社区抢车位
Semaphore有很多方法可以满足不同的需求,详见
Semaphore信号量主要用于两个目的(作用)
第一个特性通常体现在多个线程可以并发的使用这些资源,但是资源数是固定的,可能无法让所有线程占有
第二个提醒体现在资源数是固定的,只能被同样数量的线程所占用,其他线程只能等待资源被释放
这里举个社区抢车位的栗子 设有六个车子,两个车位,则两个车位只能被两个车子占有,其他车子只能等待已占有车位的车子不再占有.
代码实例
社区抢车位
Semaphore有很多方法可以满足不同的需求,详见