jdk中的锁

    jdk中的锁分为两种:synchronized关键字和lock接口。
    synchronized原理涉及三种锁概念:偏向锁、轻量级锁、重量级锁,本质是个锁升级(膨胀)的过程,由此保证了synchronized关键字当前的高性能。
    偏向锁:若对象只有1个线程请求,将锁直接分配给该线程;
    轻量级锁:若对象有2个线程请求,线程竞争时的等待使用cas(自旋锁、乐观锁的概念);
    重量级锁:若对象被2个以上的线程请求,出现竞争时将阻塞等待中的线程;
    lock接口的原理是工具:aqs(队列同步器),aqs的三个组成部分:状态、队列、cas,lock接口的实现类包括:重入锁、读写锁,涉及到锁的概念:公平/非公平锁、共享/排他锁,如:读锁之间共享、读写互斥。
    公平锁:由队列实现,保证公平性;
    重入锁:由状态实现;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值