结盟众多企业“教练”, 共同设计、开发及提供人才培养解决方案,通过新颖多样的学习方式,针对性的定制化内容,助力企业全面提升竞争优势。
杜云飞
2天
1
二、目标收益
1、熟练掌握Java并发编程基础及应用场景
2、熟练掌握Java并发包的使用,线程池配置及调优
3、熟练掌握Java异步功能开发、函数式编程与并发编程的结合等
三、课程对象
从事Java的开发人员、测试人员以及对Java感兴趣的人员。
主题 | 内容 | 课程大纲 |
---|---|---|
Java并发编程基础(3H) | 该单元介绍Java多线程基础知识,比如Thread/Runnable API、线程状态/生命周期、同步锁 |
1.多线程基础 1.1. 多线程基础介绍 1.2. 线程创建之Thread/Runnable 1.3. 线程状态及生命周期(NEW、RUNNABLE、RUNNING、BLOCKED、TERMINATED) 1.4. Thread API(sleep、yield、join等) 2. 线程安全 2.1线程安全问题的本因 (案例:如何避免编写一个不安全的业务逻辑?) 2.2 Synchronized关键字详解 2.3 线程间数据隔离之ThreadLocal (案例:调用链跟踪系统是如何使用ThreadLocal的) 3. 线程间通信 3.1了解wait、notify 3.2生产者-消费者模式(案例:队列缓冲在任务处理中的应用) |
第二单元 Java线程池(1.5H) | 该单元主要针对5中线程池的应用及调优进行剖析 |
4. 线程池基础 4.1 线程池概要 4.2 线程池基本原理 4.3 线程池类型 4.3.1 newFixedThreadPool(int nThreads) 4.3.2 newSingleThreadExecutor 4.3.3 newCachedThreadPool 4.4 线程池实战演练(案例:线程池在服务端处理时的选型、调优及注意事项) |
第三单元 异步与函数式编程(1.5H) |
该单元结合函数式编程、 Future/CompletableFuture实现优雅的异步处理 |
5. 异步编程 5.1 为什么需要异步? 5.2 Java对异步编程的支持 5.3 使用Future编写异步功能 5.4 Future的增强版:CompletableFuture 5.5 组合式CompletableFuture 5.6 结合Stream(案例:整合异步计算结果) |