前端开发
重量级锁 标签描述

轻量级锁轻在哪里?重量级锁重在哪里? 重量级锁:我们知道,当要进入一个同步、线程安全的方法时,是需要先获得这个方法的锁的,退出这个方法时,则会释放锁。如果获取不到这个锁的话,意味着有别的线程在执行这个方法,这时我们就会马上进入阻塞的状态,等待那个持有锁的线程释放锁,然后再把我们从阻塞的状态唤醒,我们再去获取这个方法的锁。这种获取不到锁就马上进入阻塞状态的锁,我们称之为重量级锁。重点在于获取不到锁的线程,会一直处在等待状态,什么东西都做不了 优点:线程竞争不使用自旋,不会消耗CPU。 缺点:线程阻塞,响应时间缓慢。 轻量级锁:一般都是用自旋锁+CAS来实现的,我们可以定义自选的次数,到...