并发编程

(1)JAVA内存模型(JMM)

#java当中的线程通讯和消息传递(通信)

http://www.cnblogs.com/yangdagaoge/articles/9685023.html



什么是重排序和顺序一致性?Happens-Before?As-If-Serial?

(2)Synchronized的概念和分析

同步、重量级锁以及Synchronized的原理分析

自旋锁、偏向锁、轻量级锁、重量级锁的概念、使用以及如何来优化他们

(3)Volatile和DCL的知识

Volatile的使用场景和Volatile实现机制、内存语义、内存模型

DCL的单例模式,什么是DCL?如何来解决DCL的问题

(4)并发基础之AQS的深度分析

AbstractAueuedSynchronizer同步器的概念、CLH同步队列是什么?

同步状态的获取和释放、线程阻塞和唤醒

(5)Lock和并发常用工具类

java当中的Lock、ReentrantLock、ReentrantReadWriteLock、Condition

java当中的并发工具类CyclicBarrier、CountDownLatch、Semphore

java当中的并发集合类ConcurrentHashMap、ConcurrentLinkedQueue......

(6)原子操作常用知识讲解

基本类型的原子操作比如经典的AtomicBoolean、AtomicLnteger、AtomicLong

数组类型的原子操作代表几个类AtomicIntegerArray、AtomicLongArray、AtomicReferenceArray

引用类型的原子操作的典型AtomicReference、AtomicReferenceFieldUpdater......

CAS的概念和知识、Compare And Swap 以及他的缺陷

(7)线程池和并发并行

Executor、ThreadPoolExecutor、Callable &Future、ScheduledExecutorService

ThreadLocal、Fork & Join?什么是并行?线程池如何保证核心线程不被销毁?

你可能感兴趣的:(并发编程)