关键字synchronize关键字通过wait()、notify()、notifyAll()方法相结合来实现等待、通知。在ReentrantLock中通过Condition对象实现该功能。一个Lock对象可以创建多个Co…
分类:JUC
Jdk1.6 JUC源码解析(25)-ConcurrentHashMap
Jdk1.6 JUC源码解析(25)-ConcurrentHashMap 作者:大飞 功能简介: ConcurrentHashMap是一种线程安全的HashMap。相对于HashTable和Collecti…
Java检测死锁之ThreadMXBean
public static void main(String[] args) { ThreadMXBean mbean = ManagementFactory.getThreadMXBean(); // 只能检测 syn…
Java并发框架——什么是AQS框架
什么是AQS框架 1995年sun公司公布了第一个java语言版本号,能够说从jdk1.1到jdk1.4期间java的使用主要是在移动应用和中小型企业应用中,在此类领域中基本不用设计大型并发场景,当然也没有大型互联网公司…
千回百折:百度Java研发offer斩获记和经验分享
起因 面试过程 等待offer的过程中悟道 Java面试常考知识点个人总结 从去年百度全面冻结hc,停止社招之后,今年陆续又缩小了实习生的招聘规模,每个部门的hc都非常紧张,相应…
JUC之AQS_CountDownLatch
看看这个博客 更有助于理解闭锁 CountDownLatch:闭锁 一个线程等待多个线程执行完。才继续自己的操作;可以使用闭锁来保证某些活动到其他活动做完才继续进行 应用 1. 确保计算机在其需要的所有资源被初始化之后才…
JUC学习笔记(8)—CyclicBarrier
CyclicBarrier的字面意思是可循环(Cyclic)使用的屏障(Barrier)。它要做的事情是,让一组线程到达一个屏障(也可以叫同步点)时被阻塞,直到最后一个线程到达屏障时,屏障才会开门,所有被屏障拦截的线程才…
java多线程系列10 阻塞队列模拟
接下来的几篇博客会介绍下juc包下的相关数据结构 包含queue,list,map等 这篇文章主要模拟下阻塞队列。 下面是代码 import java.util.LinkedList; import java.util.…
java学习笔记
在“Java 集合系列01之 总体框架”中,介绍java集合的架构。主体内容包括Collection集合和Map类;而Collection集合又可以划分为List(队列)和Set(集合)。 1. List的实现类主要有:…
JUC源码分析23-队列-ConcurrentLinkedQueue
之前看的队列大都是基于锁来实现阻塞,ConcurrentLinkedQueue采用wait-free算法来实现’无锁’的并发队列。wait-free算法之前没听说过,只听过lock-free,大牛…
Jdk1.6 JUC源码解析(22)-LinkedBlockingDeque
Jdk1.6 JUC源码解析(22)-LinkedBlockingDeque 作者:大飞 功能简介: LinkedBlockingDeque是一种基于双向链表实现的有界的(可选的,不指定默认int最大值)阻…
ConcurrentHashMap源码阅读笔记(JUC)
76-85行 注释:这里主要讲的是同为线程安全的Hash,HashTable和ConcurrentHashMap的区别。ConcurrentHashMap(下文用本类指代)虽然是线程安全的,但是检索操作(比如get,是不…