版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wrs120/article/details/90717059
synchronized
- 关键字,基于jvm
- 锁释放:@1:获得锁的线程执行完了该代码块 @2.线程执行出现异常,是一种被动方式释放,通过Monitor.exit()释放,Monitor更多讲解参见:https://blog.csdn.net/ignorewho/article/details/80854625
- 是一种可重入锁、可中断锁,
- 适用于并发少
Lock
- 接口,基于java编程
- 调用Lock.unlock()释放锁,是一种主动方式释放
- 分为:ReentrantLock读写锁,ReadWriteLock可重入锁,公平锁,可中断锁
- 高并发时比synchronized性能高