lock和synchronized的区别和优势
前言
lock是在java5以后出现的:juc包(java.util.concurrent.locks)
synchronized锁什么时候释放
1、获取锁的线程执行完了改代码块
2、线程执行出现异常
synchronized锁的缺陷
lock与synchronized
1、lock是java的接口,而synchronized是java的关键字
2、lock可以主动释放锁,synchronized被动释放
Lock接口族下各种锁:
ReadWriteLock
readLock 和 writeLock
ReentrantLock:可重入锁;
synchronized:可重入锁
可中断锁
公平锁
读写锁
ReentrantReadWriteLock