Spring - JUC Semaphore 源码分析
前言
Github:https://github.com/yihonglei/jdk-source-code-reading(java-concurrent)
一 原理
Semaphore(信号量),内部维护一组许可证,通过 acquire 方法获取许可证,如果获取不到,则阻塞;
通过 release 释放许可,即添加许可证。许可证其实是 Semaphore 中维护的一个 volatile 整型 state 变量,
初始化的时候定义一个数量,获取时减少,释放时增加,一直都是在操作 state。
Se
转载
2021-02-28 13:44:15 ·
141 阅读 ·
0 评论