本人邮箱: kco1989@qq.com
欢迎转载,转载请注明网址 http://blog.csdn.net/tianshi_kco
github: https://github.com/kco1989/kco
代码已经全部托管github有需要的同学自行下载
#引言
这节课,我们就开始讲一下信号量Semaphore
#理论
Semaphore
:一个可计数的信号量。一般一个semaphore
信号量相当于一组许可证。acquire
方法是一个阻塞方法, 当调用该方法是,会一直阻塞直到一个可用许可证被获取到。每次release
释放,都会增加一个许可证,此时也会释放一个阻塞请求。然而。并非每次许可对象都可以被使用的,这个Semaphore
信号量只保存几个可用的许可证和相应的操作。
如果有几个线程数要访问几个共享资源的话,那么这时候就应该使用信号量。举例说明: