并发编程
JVM内存模型(JMM)
1.Java当中的线程通讯和消息传递
2.什么是重排序和顺序一致性?Happens-Before?As-If-Serial?
Synchronized的概念和分析
1.同步,重量级锁以及Sychronized的原理分析
2.自旋锁,偏向锁,轻量级锁,重量级锁的概念、使用以及如何优化
Volatile和DCL的知识
1.Volatile的使用场景和Volatile实现机制、内存语义、内存模型
2.DCL的单例模式,什么是DCL?如何来解决DCL的问题
并发基础之AQS的深度分析
1.AnstractAueuedSynchronizer同步器的概念、CLH同步队列是什么?
2.同步状态的获取和释放、线程阻塞和唤醒
Lock和并发常用工具类
1.Java当中的Lock、ReenrantLock、ReentrantReadWriteLock、Condition
2.Java当中的并发工具类CyclicBarrier、CountdownLatch、Semphore
3.Java当中的并发集合类ConcurrentHashMap、ConcurrentLinkedQueue…
原子操作常用知识讲解
1.基本类型的原子操作比如经典的AtomicBoolean、AtomicIngter、AtomicLong
2.数组类型的原子操作代表的几个类AtomicIntegerArray、AtomicLongArray、AtomicReferenceArray
3.引用类型的原子操作的典型AtomicReference、AtomicReferenceFieldUpdater…
4.CAS概念知识、COmpare And Swap以及缺陷
线程池和并发并行
1.Excutor、ThreadPoolExcutor、Callable & Future、ScheduledExcutorService
2.ThreadLocal、Fork & Join?什么是并行?线程池如何保证核心线程不被销毁?