![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
多线程
tyeerth
现在很菜 以后会更菜
展开
-
java并发容器介绍
1、概览ConcurrentHashMap:线程安全的HashMapCopyOnWriteArrayList:线程安全的ListBlockingQueue:接口,表示阻塞队列,非常适合用于作为数据共享的通道。ConcurrentLinkedQueue :高效的非阻塞并发队列,使用链表实现。可以看作是一个线程安全的LinkedList。ConcurrentSkipListMap:是一个Map,使用跳表的数据结果进行快速查找。2、ConcurrentHashMap先介绍一下hashMap原创 2020-09-18 22:03:36 · 512 阅读 · 0 评论 -
并发流程控制
文章目录1、什么是控制并发流程1.1为什么要控制?1.2、线程并发控制工具类概览2、CountDownLatch倒计时门闩(多个线程可并行)2.1介绍2.2主要方法2.3 用法3、Semaphore信号量(保证同一时间内线程访问数量小于某个值)。3.1解释3.2使用流程3.3主要方法介绍。3.4 代码演示(释放和获取的数量必须要一致)4、Condition接口(又称条件对象)4.1作用4.2代码演示4.3注意点5、CyclicBarrier循环栅栏。1、什么是控制并发流程1.1为什么要控制? 线程原创 2020-09-18 21:59:12 · 288 阅读 · 0 评论 -
原子类的分析与使用
原子类1、原子类作用与介绍。1.1特点不可分离一个操作中式不可中断的,即使是多线程的情况下也可以保证。1.2作用当某些变量需要保证线程安全的时候使用。原子类的作用和锁类似,是为了保证并发情况下线程安全。不过原子类相比于锁,有一定的优势:粒度更细:原子变量可以把竞争范围缩小到变量级别,这时我们可以获得的最细粒度的情况了,通常锁的粒度都要大于原子变量的粒度。效率更高:通常,使用原子类的效率会比使用锁的效率更高,除了高度竞争的情况。2、6类原子类 [外链图片转存失败,源原创 2020-09-16 08:36:59 · 490 阅读 · 0 评论 -
常见锁的介绍
锁文章目录锁1、Lock锁1.1简介、作用1.2、为什么需要Lock?1.3Lock锁的常用方法1.4可见性保证2、锁的分类2.1 乐观锁和悲观锁2.1.1 为什么会诞生非互斥同步锁(乐观锁)?2.1.2 什么是乐观锁和悲观锁2.1.3典型的悲观锁和乐观锁的实现2.1.4 开销对比2.2 可重入锁和非可重入锁2.2.1 什么是可重入?2.2.2 可重入锁的源码分析1、Lock锁1.1简介、作用是一种工具,用于控制对共享资源的访问。Lock和synchronized,这两个是最常见的锁,它们原创 2020-09-15 16:16:12 · 422 阅读 · 0 评论 -
Java线程池的工作原理
文章目录1、线程池组成部分2、Executor3、线程池如何实现任务复用4、ThreadLocal工具类详解4.1两个重要的使用场景4.2主要方法介绍4.3使用ThreadLocal带来的好处1、线程池组成部分建议先学习线程池的使用方法(在本专栏的另一篇博客中)线程池管理器工作线程任务队列任务接口(Task)2、Executor3、线程池如何实现任务复用相同线程执行不同的任务。在线程池中的线程中不停的从队列中取出任务。源码分析4、Thread原创 2020-09-14 21:39:24 · 213 阅读 · 0 评论 -
Java线程池的使用
文章目录1、重要性2、好处3、线程池的构造3.1、构造函数的参数3.2参数解释4、创建线程池4.1自动创建4.1.1 newFixedThreadPool.4.1.2 newSingleThreadExecutor4.1.3 newCachedThreadPool4.1.4 newScheduledThreadPool5、阻塞队列分析6、停止线程池的正确方法。6.1 shutdown6.2isShutdown开始结束就会返回true,否则为false6.3isTerminated6.4awaitTermi原创 2020-09-14 21:35:32 · 95 阅读 · 0 评论