第1章 课程介绍与并发简介
第1节 课程简介.mp4
第2节 什么是并发编程.mp4
第3节 并发编程的挑战之频繁的上下文切换.mp4
第4节 并发编程的挑战之死锁.mp4
第5节 并发编程的挑战之线程安全.mp4
第6节 并发编程的挑战之资源限制.mp4
第2章 线程基础
第1节 进程与线程的区别.mp4
第2节 线程的状态及其相互转换.mp4
第3节 创建线程的方式上.mp4
第4节 创建线程的方式下.mp4
第5节 线程的挂起跟恢复.mp4
第6节 线程的中断操作.mp4
第7节 线程的优先级.mp4
第8节 守护线程.mp4
第3章 线程安全性
第1节 什么是线程安全性.mp4
第2节 从字节码角度剖析线程不安全操作.mp4
第3节 原子性操作.mp4
第4节 深入理解synchronized.mp4
第5节 volatile关键字及其使用场景.mp4
第6节 单例与线程安全.mp4
第7节 如何避免线程安全性问题.mp4
第4章 锁
第10节 深入剖析ReentrantReadWriteLock之读锁源码实现.mp4
第11节 深入剖析ReentrantReadWriteLock之写锁源码实现.mp4
第12节 锁降级详解.mp4
第13节 StampedLock原理及使用.mp4
第1节 锁的分类.mp4
第2节 深入理解Lock接口.mp4
第3节 实现属于自己的锁.mp4
第4节 AbstractQueuedSynchronizer浅析.mp4
第5节 深入剖析ReentrantLock源码之非公平锁的实现.mp4
第6节 深入剖析ReentrantLock源码之公平锁的实现.mp4
第7节 掌控线程执行顺序之多线程debug.mp4
第8节 读写锁特性及ReentrantReadWriteLock的使用.mp4
第9节 源码探秘之AQS如何用单一int值表示读写两种状态.mp4
第5章 线程间的通信
第1节 waitnotifynotifyAll.mp4
第2节 等待通知经典模型之生产者消费者.mp4
第3节 使用管道流进行通信.mp4
第4节 Thread.join通信及其源码浅析.mp4
第5节 ThreadLocal的使用.mp4
第6节 Condition的使用.mp4
第6章 原子类
第1节 什么是原子类.mp4
第2节 原子更新基本类型.mp4
第3节 原子更新数组类型.mp4
第4节 原子地更新属性.mp4
第5节 原子更新引用.mp4
第7章 容器
第1节 同步容器与并发容器.mp4
第2节 同步容器.mp4
第3节 并发容器.mp4
第4节 LinkedBlockingQueue的使用及其源码探秘.mp4
第8章 并发工具类
第1节 CountDownLatch的使用及其源码探秘.mp4
第2节 CyclicBarrier的使用及其源码探秘.mp4
第3节 Semaphore的使用及其源码探秘.mp4
第4节 Exchanger的使用.mp4
第9章 线程池及Executor框架
第1节 为什么要使用线程池.mp4
第2节 创建线程池及其使用.mp4
第3节 Future与CallableFutureTask.mp4
第4节 线程池的核心组成部分及其运行机制.mp4
第5节 线程池拒绝策略.mp4
第6节 Executor框架.mp4
第7节 线程池的使用建议.mp4
第10章 jvm与并发
第1节 jvm内存模型.mp4
第2节 先行发生原则 happensbefore.mp4
第3节 指令重排序.mp4
第11章 实战
第1节 数据同步接口需求分析.mp4
第2节 中间表设计.mp4
第3节 基础环境搭建.mp4
第4节 生产者代码实现.mp4
第5节 消费者编码实现.mp4
第12章 课程总结
第1节 课程总结.mp4
课件资料下载链接.txt
课件资料下载链接.txt
课程笔记.html
课程笔记.html
评论0