当前位置: 首页 > news >正文

谈谈你对AQS的理解

AQS 是多线程同步器,它是 JUC 包中多个组件的底层实现,如 LockCountDownLatchSemaphore等都用到了AQS。

从本质上来说,AQS 提供了两种锁机制,分别是排它锁,和共享锁。

排它锁,就是存在多线程竞争同一共享资源时,同一时刻只允许一个线程访问该共享资源,也就是多个线程中只能有一个线程获得锁资源,比如 Lock 中的ReentrantLock 重入锁实现就是用到了 AQS 中的排它锁功能。

共享锁也称为读锁,就是在同一时刻允许多个线程同时获得锁资源,比如CountDownLatch Semaphore 都是用到了AQS 中的共享锁功能。


http://www.mrgr.cn/news/59210.html

相关文章:

  • C++基础:三个字符串也能搞大小?
  • 【C#】DevExpress 提供 自定义皮肤功能、注册皮肤库 。SkinManager
  • Linux云计算 |【第五阶段】ARCHITECTURE-DAY5
  • 8.three.js相机详解
  • Spring Boot实现的动态化酒店住宿管理系统
  • RabbitMQ安装部署
  • 百度智能云推出11.11活动,各大云厂商香港服务器优惠活动汇总
  • Spark 基础操作
  • 线程安全-同步与互斥/死锁
  • 读取文件内容,并按数学成绩排名,之后输出显示
  • linux学习笔记 Ubuntu下的守护进程supervisor安装与多项目部署
  • 2024系统架构师---真题考试知识点
  • python如何通过json以及pickle读写保存数据
  • es实现自动补全
  • python 轮子是什么
  • 【Python】Whoosh:全流程自建搜索引擎
  • Linux之远程连接服务器
  • 【机器学习】股票数据爬取与展示分析(有代码链接)
  • 解析三相220V与三相380V变频器的关键差异
  • 初识Linux · 动静态库(incomplete)
  • 《 C++ 修炼全景指南:十七 》彻底攻克图论!轻松解锁最短路径、生成树与高效图算法
  • OCR应用之集装箱箱号自动识别技术,原理与应用
  • 3.1.1 平衡二叉树中改变区块属性,并分裂区块保持属性一致:MmSplitRegion()
  • RHCE笔记
  • 【LeetCode】修炼之路-0008- String to Integer (atoi)【python】
  • 数据结构(8.4_1)——简单选择排序