![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
并发
文章平均质量分 90
w7sss
这个作者很懒,什么都没留下…
展开
-
Semaphore源码解读
Semaphore源码解读目录Semaphore源码解读前言源码解读前言Semaphore字面意思是信号量的意思,它的作用是控制访问特定资源的线程数目,底层依赖AQS的状态State,是在生产当中比较常用的一个工具类。构造方法:public Semaphore(int permits) public Semaphore(int permits, boolean fair)permits 表示许可线程的数量fair 表示公平性,如果这个设为 true 的话,...原创 2021-06-02 19:48:36 · 157 阅读 · 0 评论 -
阻塞队列ArrayBlockingQueue源码解读
阻塞队列ArrayBlockingQueue源码解读目录阻塞队列ArrayBlockingQueue源码解读前言源码解读前言BlockingQueue,是java.util.concurrent 包提供的用于解决并发生产者 - 消费者问题的最有用的类,它的特性是在任意时刻只有一个线程可以进行take或者put操作,并且BlockingQueue提供了超时return null的机制,在许多生产场景里如线程池都可以看到这个工具的身影。常见的4种阻塞队列:ArrayBlockin原创 2021-06-01 19:32:53 · 111 阅读 · 0 评论 -
Reentantlock源码解读
Reentantlock源码解读目录Reentantlock源码解读前言源码解读前言ReentrantLock是一种基于AQS框架的应用实现,是JDK中的一种线程并发访问的同步手段,它的功能类似于synchronized是一种互斥锁,可以保证线程安全。而且它具有比synchronized更多的特性,比如它支持手动加锁与解锁,支持加锁的公平性。至于AQS,不用多说它的核心地位,它是整个java并发包JUC的基石。AQS定义了一套多线程访问共享资源的同步器框架。源码解读话不多说.原创 2021-05-31 21:21:41 · 158 阅读 · 0 评论