Java面试必问题目:AQS原理深度剖析,看完吊打面试官!

大家好,我是小马哥。最近并发编程是大厂面试中重点考察的问题。今天我们来探讨一下AQS相关的面试技巧。毕竟此类问题回答的好坏会在很大程度上影响我们面试的得分。

1. AQS在java中的使用

给代码加锁,是java中处理并发问题的重要手段。

java中的很多锁都是基于抽象类AQS(AbstractQueuedSynchronizer)实现的。

如下表所示:

2. AQS的实现机制

AQS提供了实现锁的机制,即CLH队列,同时通过ConditionObject实现了条件等待链表。

其中CLH队列如下:

  1. AQS使用 private volatile int state; 表示同步状态

  2. 通过内置的FIFO队列完成线程的排队

  3. 使用CAS对state进行修改。

3. AQS主要方法

AQS对外提供的用于实现锁的方法如下:

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值