课程目录:
1-一、并发编程入门到实战课程简介
1-二、什么是并发编程
1-三、并发编程的挑战之频繁的上下文切换
1-四、并发编程的挑战之死锁
1-五、并发编程的挑战之线程安全
1-六、并发编程的挑战之资源限制
2-一、进程与线程的区别
2-二、线程的状态及其相互转换
2-三、建立线程的方式(上)
2-四、建立线程的方式(下)
2-五、线程的挂起及其恢复
2-六、线程的中断操做
2-七、线程的优先级
2-八、守护线程
3-一、什么是线程安全性
3-二、从字节码角度剖析线程不安全操做
3-三、原子性操做
3-四、深刻理解synchronized关键字
3-五、volatile关键字及其使用场景
3-六、单例与线程安全
3-七、如何避免线程安全性问题
4-十、深刻剖析ReentrantReadWriteLock之读锁源
4-十一、深刻剖析ReentrantReadWriteLock之写锁源
4-十二、锁降级详解
4-1三、StampedLock原理及使用
4-一、锁的分类
4-二、深刻理解lock接口
4-三、实现属于本身的锁
4-四、AbstractQueuedSynchronizer浅析
4-五、深刻剖析ReentrantLock源码之非公平锁的实现
4-六、深刻剖析ReentrantLock源码之公平锁的实现
4-七、掌控线程执行顺序之多线程Debug
4-八、读写锁特性及ReentrantReadWriteLock的使
4-九、源码探秘之AQS如何用单一int值表示读写两种状态
5-一、wait、notify、notifyAll
5-二、等待通知经典模型之生产者消费者
5-三、使用管道流进行通讯
5-四、Thread.join通讯及其源码浅析
5-五、ThreadLocal的使用
5-六、Condition的使用
6-一、什么是原子类
6-二、原子更新基本类型
6-三、原子更新数组类型
6-四、原子更新属性
6-五、原子更新引用类型
7-一、同步容器与并发容器
7-二、同步容器
7-三、并发容器
7-四、LinkedBlockingQueue的使用及其源码探秘
8-一、CountDownLatch的使用及其源码探秘
8-二、CyclicBarrier的使用及其源码探秘
8-三、Semaphore的使用及其源码探秘
8-四、Exchanger的使用
9-一、为何要使用线程池
9-二、线程池的建立及其使用
9-三、Callable、Future、FutureTask简介
9-四、线程池的核心组成部分及其运行机制
9-五、线程池拒绝策略
9-六、使用Executor框架建立线程池的n种方法
9-七、线程池的使用建议
10-一、java内存模型
10-二、先行发生原则happens-before
10-三、指令重排序
11-一、需求分析
11-二、中间表设计
11-三、基础环境搭建
11-四、生产者编码实现
11-五、消费者编码实现
12-一、课程总结java
下载地址:Java多线程视频教程并发编程面试知识面试