锁作为并发共享数据,保证一致性的工具,在JAVA平台有多种实现(如 synchronized 和 ReentrantLock等等 ) 。这些已经写好提供的锁为我们开发提供了便利,但是锁的具体性质以及类型却很少被提及。本系列文章将分析JAVA中常见的锁以及其特性,为大家答疑解惑。 1、自旋锁 2、自旋 ...
分类:
编程语言 时间:
2018-11-27 19:18:56
阅读次数:
141
java使用单独的锁对象的代码展示 java private Lock bankLock = new ReentrantLock(); //因为sufficientFunds是锁创建的条件所以称其为条件对象也叫条件变量。 private Condition sufficientFunds = ban ...
分类:
编程语言 时间:
2018-11-24 22:32:01
阅读次数:
237
上次博客讲到了通过wait()方法和notify()方法来实现循环打印数字和字母得问题。其实使用重入锁也可以实现同样得功能,那么开始我们先通过源码来了解一下重入锁把。 首先它有一个lock()方法,它用来加锁,从代码中可以看到,它调用得是sync.lock()方法, 在这个类里面,有一个静态抽象类S ...
分类:
其他好文 时间:
2018-11-21 00:46:14
阅读次数:
182
并发编程-ReentrantLock 细节说明 title: 并发编程-ReentrantLock 细节说明date: 2018-07-05 09:06:57categories: - 并发编程 <Excerpt in index | 首页摘要><!-- more --> - 本章对Reentran ...
分类:
其他好文 时间:
2018-11-20 15:01:06
阅读次数:
216
一、什么是AQS AQS(AbstractQueuedSynchronize:队列同步器)是用来构建锁或者其他同步组件的基础框架,很多同步类都是在它的基础上实现的,比如常用的ReentrantLock、ReentrantReadWriteLock、CountDownLatch、Semaphore。 ...
分类:
编程语言 时间:
2018-11-19 21:40:30
阅读次数:
205
之前讲了《AQS源码阅读》和《ReentrantLock源码阅读》,本次将延续阅读下ReentrantReadWriteLock,建议没看过之前两篇文章的,先大概了解下,有些内容会基于之前的基础上阅读。这个并不是ReentrantLock简单的升级,而是落地场景的优化,我们来详细了解下吧。背景JUC包里面已经有一个ReentrantLock了,为何还需要一个ReentrantReadWriteLo
分类:
编程语言 时间:
2018-11-16 20:41:44
阅读次数:
192
概述 ReentrantReadWriteLock是Lock的另一种实现方式,ReentrantLock是一个排他锁,同一时间只允许一个线程访问,而ReentrantReadWriteLock允许多个读线程同时访问,但不允许写线程和读线程、写线程和写线程同时访问。相对于排他锁,提高了并发性。在实际应 ...
分类:
编程语言 时间:
2018-11-15 13:34:58
阅读次数:
244
前言相信学过java的人都知道 synchronized 这个关键词,也知道它用于控制多线程对并发资源的安全访问,兴许,你还用过Lock相关的功能,但你可能从来没有想过java中的锁底层的机制是怎么实现的。如果真是这样,而且你有兴趣了解,今天我将带领你轻松的学习下java中非常重要,也非常基础的可重 ...
分类:
编程语言 时间:
2018-11-15 01:32:21
阅读次数:
142
一、ReentrantLock类结构 二、以NonfairSync为例解析重入锁 获取锁标志: (NonfairSync extends Sync extends AbstractQueuedSynchronizer extends AbstractOwnableSynchronizer) 1.Ab ...
分类:
编程语言 时间:
2018-11-09 16:02:40
阅读次数:
198
#基础篇幅:线程基础知识、并发安全性、JDK锁相关知识、线程间的通讯机制、JDK提供的原子类、并发容器、线程池相关知识点#高级篇幅:ReentrantLock源码分析、对比两者源码,更加深入理解读写锁,JAVA内存模型、先行发生原则、指令重排序#环境说明:idea、java8、maven#第一章并发简介##01课程简介为什么要学习并发编程?方便实际开发面试课程特点适合群体##02什么是并发编程并发
分类:
编程语言 时间:
2018-11-09 12:15:04
阅读次数:
204