![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
多线程
文章平均质量分 94
wangbiao007
这个作者很懒,什么都没留下…
展开
-
并发编程之阻塞队列ArrayBlockingQueue
一.ArrayBlockingQueue类图结构ArrayBlockingQueue是一个有界阻塞队列,先看一下ArrayBlockingQueue的几个重要元素 /**数组存放数据*/ final Object[] items; /** 记录取数据的位置,可以看成是队头 */ int takeIndex; /** 记录存数据的位置,可以看成是队尾 */ int putIndex; /** 队列长度,元素的个数 */ int.原创 2021-05-26 00:16:15 · 500 阅读 · 0 评论 -
浅谈volatile关键字
今天学习CurrentHashMap源码,发现CurrentHashMap源码中有的属性是用volatile修饰的,别人说volatile可以保证读写的内容是最新的。看到这句话的时候还是满脑子的问号。特地去了解了一下volatile的特性,现在就将了解到的一些内容记录下来,后面有时间会更加深入学习一下。 1.volatile可以保证在多线程读取...原创 2016-10-09 12:05:28 · 2315 阅读 · 0 评论 -
多线程之DownCountLatch CyclicBarrier和Semaphore
一.概述 DownCountLatch ,CyclicBarrier和Semaphore都是共享锁,但是他们达到的效果不一样 DownCountLatch :DownCountLatch 让一个线程等待,等其他线程运行某一个条件后,这个线程才可以继续运行。DownCountLatch在实例话的时候可以传这个int类型的数据count,count是锁计数器原创 2017-06-12 18:23:30 · 916 阅读 · 0 评论 -
多线程之几种不同的线程池
一.概括 1.1创建线程池参数介绍 在创建线程池时都会调用线程池的构造方法ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, ...原创 2017-07-04 16:27:17 · 867 阅读 · 0 评论 -
线程池ThreadPoolExecutor源码解析
最近将ThreadPoolExecutor源码又读了一遍,将以前没有弄的太懂的地方给弄懂了点。所以写下这篇博客记录一下自己的理解。 在看源码之前得知道线程池中几个参数的作用和线程池大体的工作原理,这样才能更好的理解源码。一.线程池的构造方法 ThreadPoolExecutor(int corePoolSize, ...原创 2017-10-10 19:33:54 · 2272 阅读 · 3 评论