可重入锁ReentrantLock与Synchronized相比,其实现原理有什么不同?

小龙女 小龙女 2019年07月05日 23:32:05 阅读 83

其实,锁的实现原理基本是为了达到一个目的:让所有的线程都能看到某种标记。Synchronized通过在对象头中设置标记实现了这一目的,是一种JVM原生的锁实现方式,而ReentrantLock以及所有的基于Lock接口的实现类,都是通过用一个volitile修饰的int型变量,并保证每个线程都能拥有对该int的可见性和原子修改,其本质是基于所谓的AQS框架。

用户回答
提问者
小龙女
最近登录:07月05日 21:13
暂无职业介绍

文章

0

问答

7

粉丝

0