Sychronized和ReentrantLock用哪个好?

Sychronized和ReentrantLock用哪个好?SychronizedR 中的一个关键字 JDK 提供的一个 Java 类 JVM 层面的锁 API 层面的锁自动加锁和释放锁需要手动加锁和释放锁不可获取当前线程是否上锁可获取当前线程是否上锁 isHeldByCurr

大家好,欢迎来到IT知识分享网。

Sychronized

ReentrantLock

Java中的一个关键字

JDK提供的一个Java类

JVM层面的锁

API层面的锁

自动加锁和释放锁

需要手动加锁和释放锁

不可获取当前线程是否上锁

可获取当前线程是否上锁(isHeldByCurrentThread)

非公平锁

分为公平锁和非公平锁

不可中断

可中断:

  1. tryLock()
  2. lockInterruptibly() + interrupt()

锁的是对象,锁信息保存在对象头中

int类型的state作为锁的状态标识

底层有锁升级过程

没有锁升级过程

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/97638.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信