java Lock实现是否使用同步代码?

时间:2017-11-04 18:32:04

标签: java concurrency locking reentrantlock

据说Locksynchronized好,因为有许多原因,比如能力使用不同的范围,公平性等等。但就我而言,synchronized就是使用本机代码实现,而ReentrantLock和其他似乎是通常的java类。

我一直在查看ReentrantLock源代码,似乎无法找到任何synchronized块。有人可以解释一下如何在不使用synchronized块的情况下同步不同的线程吗?似乎有很多操作,其中没有一个是原子的。

UPD: 它与question关于CPU使用率的不完全相同,而不是Lock实现中用于提供同步的精确工具。我做了一些更多的研究,事实证明,在ReentrantLock的核心,有native方法获取Lock。这就是我的问题的答案。

0 个答案:

没有答案