[转] 多线程 《深入浅出 Java Concurrency》目录

http://ifeve.com/java-concurrency-thread-directory/

 

 

synchronized使用的内置锁和ReentrantLock这种显式锁在java6以后性能没多大差异,在更新的版本中内置锁只会比显式锁性能更好。

这两种锁都是独占锁,java5以前内置锁性能低的原因是它没做任何优化,直接使用系统的互斥体来获取锁。

显式锁除了CAS的时候利用的是本地代码以外,其它的部分都是Java代码实现的,在后续版本的Java中,显式锁不太可能会比内置锁好,只会更差。使用显式锁的唯一理由是要利用它更多的功能

 

 J.U.C 整体认识

原子操作 part 1 从AtomicInteger开始

原子操作 part 2 数组、引用的原子操作

原子操作 part 3 指令重排序与happens-before法则

原子操作 part 4 CAS操作

锁机制 part 1 Lock与ReentrantLock

锁机制 part 2 AQS

锁机制 part 3 加锁的原理 (Lock.lock)

锁机制 part 4 锁释放与条件变量 (Lock.unlock And Condition)

锁机制 part 5 闭锁 (CountDownLatch)

锁机制 part 6 CyclicBarrier

锁机制 part 7 信号量 (Semaphore)

锁机制 part 8 读写锁 (ReentrantReadWriteLock) (1)

锁机制 part 9 读写锁 (ReentrantReadWriteLock) (2)

锁机制 part 10 锁的一些其它问题

并发容器 part 1 ConcurrentMap (1)

并发容器 part 2 ConcurrentMap (2)

并发容器 part 3 ConcurrentMap (3)

并发容器 part 4 并发队列与Queue简介

并发容器 part 5 ConcurrentLinkedQueue

并发容器 part 6 可阻塞的BlockingQueue (1)

并发容器 part 7 可阻塞的BlockingQueue (2)

并发容器 part 8 可阻塞的BlockingQueue (3)

并发容器 part 9 双向队列集合 Deque

并发容器 part 10 双向并发阻塞队列 BlockingDeque

并发容器 part 11 Exchanger

并发容器 part 12 线程安全的List/Set CopyOnWriteArrayList/CopyOnWriteArraySet

线程池 part 1 简介

线程池 part 2 Executor 以及Executors

线程池 part 3 Executor 生命周期

线程池 part 4 线程池任务拒绝策略

线程池 part 5 周期性任务调度

线程池 part 6 线程池的实现及原理 (1)

线程池 part 7 线程池的实现及原理 (2)

线程池 part 8 线程池的实现及原理 (3)

线程池 part 9 并发操作异常体系

并发总结 part 1 死锁与活跃度

并发总结 part 2 常见的并发场景

并发总结 part 3 常见的并发陷阱

并发总结 part 4  性能与伸缩性

捕获Java线程池执行任务抛出的异常

 

原文地址:https://www.cnblogs.com/jasonHome/p/5753836.html