|
介绍:
课程简介:
随着多核时代的兴起,现在的服务器CPU可能多达10个以上的内核。对于并发编程的市场需求量激增,那么如何才能将多核CPU的性能发挥到极致呢?
而Java作为服务端编程使用最广泛的语言,必然需要和多核CPU打交道。那Java为我们提供了哪些并发编程的工具呢?
本课程将重点介绍基于Java语言的并行程序设计。内容将涵盖多线程基础、并发库解析以及高并发程序设计思路等多个方面。
如何写出正确的并行代码,而且是写出高性能的程序,本课程都会给你答案!
课程大纲:
第1课:前言和多线程基础
为什么需要并行
有关并行的重要概念
有关并行性能的2个重要定律
第2课:多线程基础
线程的基本操作
守护线程
优先级
中断处理
基本的线程同步操作
第3课:Java内存模型和线程安全
原子性
可见性
有序性
Happen-Before 规则
线程安全的概念
线程安全的反例
第4课:JDK并发包
各种同步控制工具的使用
并发容器及典型源码分析
同步工具、并发容器使用小案例
第5课:JDK并发包
线程池的基本使用
扩展和增强线程池
线程池及其核心代码分析
第6课:并发设计模式
单例
不变模式
生产者消费者
Future模式
第7课:无锁
无锁类的使用
无锁类的原理详解
无锁算法详解
第8课:NIO和AIO
NIO的好处
NIO核心类介绍
Selector的多路复用
使用NIO进行网络编程案例
AIO介绍
第9课:锁的优化和注意事项
锁优化的思路和方法7~
虚拟机内的锁优化
死锁
一个错误使用锁的案例
ThreadLocal及其源码分析
第10课:并发调试与JDK8新特性1
多线程调试的方法
多线程调试案例+
线程dump及分析
JDK8对并发的新支持
第11课:综合案例:jetty核心代码分析
jetty如何处理高并发
实现高并发程序的基本思想
授课时间:
课程预计2017年11月22日开课,预计课程持续时间为13周。
授课对象:
有Java语言基础,并希望对Java并行程序开发有所深入的同学。
授课环境:
Windows和Linux均可。JDK环境为JDK7、JDK8
收获预期:
完成课程的同学将熟悉使用Java开发并发程序的一般方法,以及高并发程序的设计思想。
授课讲师:
葛一鸣:计算机软件与理论专业硕士学位。取得了国家认证系统分析师职称)。10余年Java学习和开发经验,参与开发过多个软件项目。对Java程序设计,JVM有一定的研究。对设计模式、人工智能、神经网络、数据挖掘等技术有浓厚兴趣。炼数成金优秀客座讲师,已成功开设《实战Java高并发程序设计》、《深入JVM内核—原理、诊断与优化》,授课思路清晰,乐于与学员互动,课程好评率一直保持在95%以上。
百度网盘下载地址:
|
|