1)根据线程要不要锁住共享资源,可以分为: 悲观锁:锁住共享资源 乐观锁:不锁住共享资源 2)如果试图锁住共享资源失败,那么线程要不要阻塞?如果不想要阻塞线程,可以通过以下两种锁实现: 自旋锁 适应性自旋锁 3)以下这 4 种锁都是专门针对 synchronized 关键字的: 无锁 偏向锁 轻量级锁 重量级锁