上一页 1 2 3 4 5 6 ··· 9 下一页
摘要: 在并发控制的流程中,有一个很重要的概念,即为标题中的条件对象,条件对象对应的英文是Condition接口,我们使用ReentrantLock是,发现基于ReentrantLock可以获取到Contition接口,可以进行阻塞或者唤醒操作。本文从以下几个方面介绍。 Condition作用及用途 Con 阅读全文
posted @ 2020-04-25 19:32 cnxieyang 阅读(354) 评论(0) 推荐(0)
摘要: 信号量用来控制有限资源的方法,举例:假如信号量为3,则同时只有3个线程共享。 概述 信号量用来控制系统耗时资源的访问,一般我们初始设置了一个公平的信号量,线程在使用时需要申请,用完之后需要释放。 使用流程 信号量Semaphore的使用流程如下: 一般设置公平的信号量-->线程在使用时需要进行req 阅读全文
posted @ 2020-04-25 19:03 cnxieyang 阅读(1006) 评论(0) 推荐(0)
摘要: 概述 本文详细介绍CountDownLatch的两种使用场景,分别是倒数(等待所有的线程处理完成)和唤醒所有线程同时运行(适用于性能测试中触发所有并发同时运行)。 下文从这个两个方面进行介绍 CountDownLatch倒数实例 实例代码利用CountDownLatch的downLatch方法让子线 阅读全文
posted @ 2020-04-24 15:52 cnxieyang 阅读(260) 评论(0) 推荐(0)
摘要: 本文基于如何去控制并发流程方面做详细介绍,主要介绍相关观念和控制手段。后续详细介绍各种控制手段的用法、实例及代码分析。 概述 有了控制并发流程,可以更好的去协调各个线程之间的工作,涉及各个线程之间的合作策略。 Semaphore:信号量 我们可以理解为:访问系统时,只有有限的凭证,只有拿到凭证之后才 阅读全文
posted @ 2020-04-24 15:45 cnxieyang 阅读(256) 评论(0) 推荐(0)
摘要: 本文主要介绍并发队列相关的知识。 概述 简单介绍各个并发并发队列的关系,并发队列是指线程安全的队列,包含:阻塞队列和非阻塞队列,区别如下。 阻塞队列:满了之后不能再插入,当队列为空的时候,读不到会阻塞 非阻塞队列:和阻塞队列完全不一样的 部分类图如下所示: 阻塞队列 对阻塞队列进行介绍,阻塞队列自身 阅读全文
posted @ 2020-04-24 14:31 cnxieyang 阅读(421) 评论(0) 推荐(0)
摘要: 本文详细介绍CopyOnWriteArrayList,从概述、原理、使用、源码、缺点等方面进行说明 背景 简要介绍下CopyOnWriteArrayList产生的背景 1.Vedtor 和SynchronizedList的锁力度比较大,基本上可以认为都是加锁在方法层面,并发度降低。(只有一把锁) 2 阅读全文
posted @ 2020-04-24 11:24 cnxieyang 阅读(536) 评论(0) 推荐(0)
摘要: 本文阐述ConcurrentHashMap线程安全问题,ConcurrentHashMap可以保证多线程读写操作时的安全,实际代码使用时,可能会有以下误区,从下面的实例代码中进行演示。 两个线程分别进行++操作,总共加2000次,核对输出结果是否是2000; 有误区的实例代码 实例代码如下所示。 p 阅读全文
posted @ 2020-04-24 10:59 cnxieyang 阅读(1750) 评论(0) 推荐(0)
摘要: 我们在使用HashMap时,产生了死循环,本文对其进行分析,此问题仅在JDK1.7及之前存在! 实例代码 实例代码如下,我们模拟两个线程同时操作HashMap package com.yang.concurrent; import java.util.HashMap; /** * 本实例演示Hash 阅读全文
posted @ 2020-04-24 09:28 cnxieyang 阅读(822) 评论(0) 推荐(0)
摘要: 我们都熟知在高并发的场景下,ArrayList是线程不安全的,JDK Collections接口提供线程安全的操作,本文通过代码演示下,最后查看源码分析下为何是线程安全的。 ArrayList升级为线程安全的List 实例 具体实现代码如下,使用Collections工具类进行升级,如下图 pack 阅读全文
posted @ 2020-04-24 09:00 cnxieyang 阅读(11244) 评论(0) 推荐(0)
摘要: 在介绍并发容器-ConncurrentHashMap,我们先看下Map类的相关类图,如下所示。 Map类图 如下所示 阅读全文
posted @ 2020-04-24 08:36 cnxieyang 阅读(498) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 ··· 9 下一页
联系邮箱:cnxieyang@163.com