<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>并发编程 on 知识铺的博客</title>
    <link>https://index.zshipu.com/geek/tags/%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B/</link>
    <description>Recent content in 并发编程 on 知识铺的博客</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>zh-CN</language>
    <lastBuildDate>Fri, 04 Sep 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://index.zshipu.com/geek/tags/%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>AQS 到底怎么排队的？CLH 队列、state 与条件变量全链路拆解</title>
      <link>https://index.zshipu.com/geek/post/20260904/AQS-%E5%88%B0%E5%BA%95%E6%80%8E%E4%B9%88%E6%8E%92%E9%98%9F%E7%9A%84CLH-%E9%98%9F%E5%88%97state-%E4%B8%8E%E6%9D%A1%E4%BB%B6%E5%8F%98%E9%87%8F%E5%85%A8%E9%93%BE%E8%B7%AF%E6%8B%86%E8%A7%A3/</link>
      <pubDate>Fri, 04 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://index.zshipu.com/geek/post/20260904/AQS-%E5%88%B0%E5%BA%95%E6%80%8E%E4%B9%88%E6%8E%92%E9%98%9F%E7%9A%84CLH-%E9%98%9F%E5%88%97state-%E4%B8%8E%E6%9D%A1%E4%BB%B6%E5%8F%98%E9%87%8F%E5%85%A8%E9%93%BE%E8%B7%AF%E6%8B%86%E8%A7%A3/</guid>
      <description>ReentrantLock 的 lock 方法执行 CAS 修改 state 失败后，线程会被封装为 Node 插入 CLH 队列尾部 ReentrantLock 的 lock 方法执行 CAS 修改 state 失败后，线程会被封装为 Node 插入 CLH 队列尾部。CountDownLatch 和 Semaphore 同样复用这套队列，只是 state 的初始值与递减逻辑不同。 AQS 的核心数据结构是 volatile int state 和一个 CLH 队列。ReentrantLock 把 state 当作重入计</description>
    </item>
  </channel>
</rss>
