课程介绍: 本课程将重点介绍基于Java语言的并行程序设计。内容将涵盖多线程基础、并发库解析以及高并发程序设计思路等多个方面。如何写出正确的并行代码,而且是写出高性能的程序,本课程都会给你答案!
适用人群:有Java语言基础,并希望对Java并行程序开发有所深入的同学。 课程目录:第1课:前言和多线程基础 - 为什么需要并行
- 有关并行的重要概念
- 有关并行性能的2个重要定律
第2课:多线程基础 - 线程的基本操作
- 守护线程
- 优先级
- 中断处理
- 基本的线程同步操作
第3课:Java内存模型和线程安全 - 原子性
- 可见性
- 有序性
- Happen-Before 规则
- 线程安全的概念
- 线程安全的反例
第4课:JDK并发包 - 各种同步控制工具的使用
- 并发容器及典型源码分析
- 同步工具、并发容器使用小案例
第5课:JDK并发包 - 线程池的基本使用
- 扩展和增强线程池
- 线程池及其核心代码分析
- ForkJoin
第6课:并发设计模式 第7课:无锁 第8课:NIO和AIO - NIO的好处
- NIO核心类介绍
- Selector的多路复用
- 使用NIO进行网络编程案例
- AIO介绍
第9课:锁的优化和注意事项 - 锁优化的思路和方法
- 虚拟机内的锁优化
- 死锁
- 一个错误使用锁的案例
- ThreadLocal及其源码分析
第10课:并发调试与JDK8新特性 - 多线程调试的方法
- 多线程调试案例
- 线程dump及分析
- JDK8对并发的新支持
第11课:综合案例:jetty核心代码分析
|