独享锁/共享锁

你说的曾经没有我的故事 提交于 2019-11-28 05:54:44

原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/11395763.html

 

独享锁

独享锁:该锁每一次只能被一个线程所持有,参考synchronized以及JUC包下的ReentrantLock

 

共享锁

共享锁:该锁可被多个线程共有,典型的就是ReentrantReadWriteLock里的读锁,它的读锁是可以被共享的,但是它的写锁每次只能被读占,读锁的共享可保证并发读是非常高效的,但是读写和写写,写读都是互斥的,参考JUC包下的ReentrantReadWriteLock


独享锁和共享锁都是通过AQS队列来实现的,通过实现不同的方法,来实现独享或者共享。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!