最新文章列表

Java多线程系列-JUC线程池

线程池架构图 线程池的架构图如下:     1. Executor 它是"执行者"接口,它是来执行任务的。准确的说,Executor提供了execute()接口来执行已提交的 Runnable 任务的对象。Executor存在的目的是提供一种将"任务提交"与"任务如何运行"分离开来的机制。它只包含一个函数接口:
yuqingshui 评论(0) 有567人浏览 2019-08-09 18:39

Java多线程系列-JUC集合

Java集合包 java集合的架构。主体内容包括Collection集合和Map类;而Collection集合又可以划分为List(队列)和Set(集合)。 1. List的实现类主要有: LinkedList, ArrayList, Vector, Stack。 (01) LinkedList是双向链表实现的双端队列;它不是线程安全的,只适用于单线程。(02) ArrayList是数组实 ...
yuqingshui 评论(0) 有627人浏览 2019-08-09 09:52

Java多线程系列-JUC锁

Java中的锁,可以分为"同步锁"和"JUC包中的锁"。   同步锁   即通过synchronized关键字来进行同步,实现对竞争资源的互斥访问的锁。Java 1.0版本中就已经支持同步锁了。   同步锁的原理是,对于每一个对象,有且仅有一个同步锁;不同的线程能共同访问该同步锁。但是,在同一个时间点,该同步锁能且只能被一个线程获取到。这样 ...
yuqingshui 评论(0) 有634人浏览 2019-08-08 23:52

(一)JUC 之 volatile 关键字

  最近项目中用到并发和多线程较多,之前都有所了解,但没有完整的学习,趁此次机会把 java.util.concurrent 包完整的总结学习一遍。 研究juc包,少不 ...
jifeng3321 评论(0) 有239人浏览 2017-09-28 11:37

JUC 基础内容概述

目录(?)[-] 1 JUC概况 2 原子操作 3 指令重排 4 Happens-before法则Java 内存模型 JMM的特性 volatile语义 5 CAS操作 6 Lock 锁 7 AQS AQS实现 Atomically managing synchronization state
JUC 
lixuguang 评论(0) 有39人浏览 2017-05-04 19:39

ThreadPoolExecutor解析一(核心线程池数量、线程池状态等)

Executor接口的定义:http://donald-draper.iteye.com/blog/2365625 ExecutorService接口定义:http://donald-draper.iteye.com/blog/2365738 Future接口定义:http://donald-draper.iteye.com/blog/2365798 FutureTask解析:http://dona ...
juc 
Donald_Draper 评论(0) 有20514人浏览 2017-03-31 22:01

ReentrantReadWriteLock详解一

AtomicInteger解析:http://donald-draper.iteye.com/blog/2359555 锁持有者管理器AbstractOwnableSynchronizer:http://donald-draper.iteye.com/blog/2360109 AQS线程挂起辅助类LockSupport:http://donald-draper.iteye.com/blog/2360 ...
Donald_Draper 评论(0) 有1402人浏览 2017-03-11 11:29

ReadWriteLock实现ConcurrentMap

ReentrantLock 实现了标准的互斥操作,也就是一次只能有一个线程持有锁,也即所谓独占锁的概念。前面的章节中一直在强调这个特点。显然这个特点在一定程度上面减低了吞吐量,实际上独占锁是一种保守的锁策略,在这种情况下任何“读/读”,“写/读”,“写/写”操作都不能同时发生。但是同样需要强调的一个概念是,锁是有一定的开销的,当并发比较大的时候,锁的开销就比较客观了。所以如果可能的话就尽量少用锁,非 ...
Donald_Draper 评论(0) 有715人浏览 2017-03-09 21:30

Semaphore详解

AtomicInteger解析:http://donald-draper.iteye.com/blog/2359555 锁持有者管理器AbstractOwnableSynchronizer:http://donald-draper.iteye.com/blog/2360109 AQS线程挂起辅助类LockSupport:http://donald-draper.iteye.com/blog/2360 ...
Donald_Draper 评论(0) 有1684人浏览 2017-03-08 22:30

用Semaphore实现对象池

AtomicInteger解析:http://donald-draper.iteye.com/blog/2359555 锁持有者管理器AbstractOwnableSynchronizer:http://donald-draper.iteye.com/blog/2360109 AQS线程挂起辅助类LockSupport:ht ...
Donald_Draper 评论(0) 有924人浏览 2017-03-07 22:11

CyclicBarrier详解

AtomicInteger解析:http://donald-draper.iteye.com/blog/2359555 锁持有者管理器AbstractOwnableSynchronizer:http://donald-draper.iteye.com/blog/2360109 AQS线程挂起辅助类LockSupport:http://donald-draper.iteye.com/blog/2360 ...
Donald_Draper 评论(0) 有1916人浏览 2017-03-07 21:43

CyclicBarrier使用实例

CountDownLatch详解:http://donald-draper.iteye.com/blog/2360597 CountDownLatch是一次性的,CyclicBarrier正好可以循环使用。它允许一组线程互相等待,直到到达某个公共屏障点(common barrier point)。所谓屏障点就是一组任务执行完毕的时刻。下面我们来看一个实例: package juc.latch; ...
Donald_Draper 评论(0) 有966人浏览 2017-03-06 22:01

CountDownLatch详解

AtomicInteger解析:http://donald-draper.iteye.com/blog/2359555 锁持有者管理器AbstractOwnableSynchronizer:http://donald-draper.iteye.com/blog/2360109 AQS线程挂起辅助类LockSupport:http://donald-draper.iteye.com/blog/2360 ...
Donald_Draper 评论(0) 有1117人浏览 2017-03-06 21:06

可重入锁ReentrantLock详解

AtomicInteger解析:http://donald-draper.iteye.com/blog/2359555 锁持有者管理器AbstractOwnableSynchronizer:http://donald-draper.iteye.com/blog/2360109 AQS线程挂起辅助类LockSupport:http://donald-draper.iteye.com/blog/2360 ...
Donald_Draper 评论(0) 有2908人浏览 2017-03-05 23:15

AQS-Condition详解

AtomicInteger解析:http://donald-draper.iteye.com/blog/2359555 锁持有者管理器AbstractOwnableSynchronizer:http://donald-draper.iteye.com/blog/2360109 AQS线程挂起辅助类:LockSupport ...
juc 
Donald_Draper 评论(0) 有1222人浏览 2017-03-05 18:51

AQS详解-CLH队列,线程等待状态

AtomicInteger解析:http://donald-draper.iteye.com/blog/2359555 锁持有者管理器AbstractOwnableSynchronizer:http://donald-draper.iteye.com/blog/2360109 AQS线程挂起辅助类LockSupport:http://donald-draper.iteye.com/blog/2360 ...
Donald_Draper 评论(0) 有2423人浏览 2017-03-04 14:45

AQS线程挂起辅助类LockSupport

/* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * Written by Doug Lea with assistance from members of JCP JSR-166 * Expert Group and released to the public domain, as e ...
Donald_Draper 评论(0) 有1061人浏览 2017-03-04 10:35

锁持有者管理器AbstractOwnableSynchronizer

/* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * Written by Doug Lea with assistance from members of JCP JSR-166 * Expert Group and released to the public domain, as e ...
JUC 
Donald_Draper 评论(0) 有1416人浏览 2017-03-03 15:10

“JUC原子类”之 AtomicLong原子类-02

AtomicLong是作用是对长整形进行原子操作。 AtomicLong源码分析(基于JDK1.7.0_40) 在32位操作系统中,64位的long 和 double 变量由于会被JVM当作两个分离的32位来进 ...
JUC 
Janle 评论(0) 有420人浏览 2016-08-11 10:21

“JUC原子类”框架-01

根据修改的数据类型,可以将JUC包中的原子操作类可以分为4类。 1. 基本类型: AtomicInteger, AtomicLong, AtomicBoolean ; 2. 数组类型: AtomicIntegerArray, AtomicLongArray, AtomicReferenceArray ; 3. 引用类型: AtomicReference, AtomicStampedRerence, ...
JUC 
Janle 评论(0) 有353人浏览 2016-08-11 10:08

最近博客热门TAG

Java(141747) C(73651) C++(68608) SQL(64571) C#(59609) XML(59133) HTML(59043) JavaScript(54918) .net(54785) Web(54513) 工作(54116) Linux(50906) Oracle(49876) 应用服务器(43288) Spring(40812) 编程(39454) Windows(39381) JSP(37542) MySQL(37268) 数据结构(36423)

博客人气排行榜

    博客电子书下载排行

      >>浏览更多下载

      相关资讯

      相关讨论

      Global site tag (gtag.js) - Google Analytics