Java锁的分类: 6类,乐 重 平 享 自 断
1.线程要不要锁住同步资源 :
(1) 锁住 悲观锁
(2) 不锁住 乐观锁
2.同一线程是否可以重复获取同一把锁:
(1)可以 可重入锁
(2)不可以 不可重复锁
3.多线程竞争时,是否排队:
(1)排队 公平锁
(2)不排队 先尝试插队,插队失败再排队,非公平锁
4.多线程能否共享一把锁:
(1)可以 共享锁
(2)不可以 排他锁
5.等锁的过程:
(1)自旋 自旋锁
(2)阻塞 非自旋锁
6.是否中断:
(1)可以 可中断锁
(2)不可以 非可中断锁