传智教育Java并发编程实战教程【32.5小时讲解】

Java并发实战教程

java并发编程

添加QQ:435946716获取全套视频+笔记

课程时长:32.5小时

课程集数:302集

1第一章Java并发编程为什么学java并发编程

01-为什么学习并发

02-课程组织和特色

03-预备知识

2第二章Java并发编程进程线程概念

01-本章内容

02-进程线程概念

03-并行并发概念

04-线程应用-异步调用

05-线程应用-提升效率

06-线程应用-提升效率-验证

07-线程应用-提升效率-小结

3第三章Java并发编程创建线程方法

01-创建线程-方法1

02-创建线程-方法2

03-创建线程-lambda简化

04-创建线程-方法1,2-原理

05-创建线程-方法3

06-线程运行-现象

07-线程运行-查看和杀死-windows

08-线程运行-查看和杀死-linux

09-线程运行-jconsole

10-线程运行原理-栈帧debug

11-线程运行原理-栈帧图解

12-线程运行原理-多线程

13-线程运行原理-上下文切换

14-常见方法-概述

15-常见方法-start_vs_run

16-常见方法-sleep_状态

17-常见方法-sleep_打断

18-常见方法-sleep_可读性

19-常见方法-yield_vs_sleep

20-常见方法-线程优先级

21-常见方法-sleep应用

22-常见方法-join

23-常见方法-join-同步应用

24-常见方法-join-限时同步

25-常见方法-interrupt-打断阻塞

26-常见方法-interrupt-打断正常

27-设计模式-两阶段终止-interrupt

28-设计模式-两阶段终止-interrupt分析

29-设计模式-两阶段终止-interrupt实现

30-设计模式-两阶段终止-interrupt细节

31-常见方法-interrupt-打断park

32-常见方法-过时方法

33-常见方法-守护线程

34-线程状态-五种

35-线程状态-六种

36-线程状态-六种-演示

37-习题-应用之统筹-分析

38-习题-应用之统筹-实现

39-第三章小结

4第四章Java并发编程产品经理需求管理篇

01-本章内容

02-小故事-线程安全问题

03-上下文切换-分析

04-临界区与竞态条件

05-上下文切换-synchronized-解决

06-上下文切换-synchronized-理解

07-上下文切换-synchronized-理解

08-上下文切换-synchronized-思考

09-锁对象面向对象改进

10-synchronized-加在方法上

11-synchronized-加在方法上-习题1~2

12-synchronized-加在方法上-习题3~4

13-synchronized-加在方法上-习题5~8

14-线程安全分析

15-线程安全分析-局部变量

16-线程安全分析-局部变量引用

17-线程安全分析-局部变量-暴露引用

18-线程安全分析-常见类-组合调用

19-线程安全分析-常见类-不可变

20-线程安全分析-实例分析1~3

21-线程安全分析-实例分析4~7

22-习题-卖票-读题

23-习题-卖票-测试方法

24-习题-卖票-解题

25-习题-转账

26-Monitor-对象头

27-Monitor-工作原理

28-Monitor-工作原理-字节码角度

29-synchronized优化原理-小故事

30-synchronized优化原理-轻量级锁

31-synchronized优化原理-锁膨胀

32-synchronized优化原理-自旋优化

33-synchronized优化原理-偏向锁

34-synchronized优化原理-偏向锁-状态

35-synchronized优化原理-偏向锁-撤销

36-synchronized优化原理-偏向锁-批量重偏向

37-synchronized优化原理-偏向锁-批量撤销

38-synchronized优化原理-锁消除

39-小故事-wait¬ify

40-wait¬ify-工作原理

41-wait¬ify-api-1

42-wait¬ify-api-2

43-wait vs sleep

44-wait¬ify-正确姿势-step1

45-wait¬ify-正确姿势-step2

46-wait¬ify-正确姿势-step3~4

47-wait¬ify-正确姿势-step5

48-设计模式-保护性暂停-定义

49-设计模式-保护性暂停-实现

50-设计模式-保护性暂停-扩展-增加超时

51-设计模式-保护性暂停-扩展-增加超时-测试

52-设计模式-join原理

53-设计模式-保护性暂停-扩展-解耦等待和生产-分析

54-设计模式-保护性暂停-扩展-解耦等待和生产-实现

55-设计模式-保护性暂停-扩展-解耦等待和生产-测试

56-设计模式-生产者消费者-定义

57-设计模式-生产者消费者-实现

58-设计模式-生产者消费者-测试

59-park&unpark-基本使用

60-park&unpark-原理

61-线程状态转换-1

62-线程状态转换-2

63-线程状态转换-3~4

64-线程状态转换

65-多把锁

66-活跃性-死锁现象

67-活跃性-定位死锁

68-活跃性-死锁-哲学家就餐

69-活跃性-活锁

70-活跃性-饥饿

71-ReentrantLock-简介

72-ReentrantLock-可重入

73-ReentrantLock-可打断

74-ReentrantLock-锁超时

75-ReentrantLock-锁超时-解决哲学家就餐

76-ReentrantLock-公平锁

77-ReentrantLock-条件变量-简介

78-ReentrantLock-条件变量-使用例子

79-设计模式-固定运行顺序-wait¬ify

80-设计模式-固定运行顺序-park&unpark

81-设计模式-交替输出-wait¬ify

82-设计模式-交替输出-await&signal

83-设计模式-交替输出-park&unpark

84-第四章小结

5第五章Java并发编程可见性和有序性

01-本章内容

02-可见性-问题

03-可见性-解决

04-可见性 vs 原子性

05-设计模式-两阶段终止-volatile

06-设计模式-犹豫模式

07-设计模式-犹豫模式-应用

08-有序性-指令重排

09-有序性-指令重排原理-指令并行优化

10-有序性-指令重排-问题

11-有序性-指令重排-验证

12-有序性-指令重排-禁用

13-volatile-原理-保证可见性

14-volatile-原理-保证有序性

15-volatile-原理-dcl-简介

16-volatile-原理-dcl-问题分析

17-volatile-原理-dcl-问题纠正

18-volatile-原理-dcl-问题解决

19-happens-before规则

20-习题-balking模式

21-习题-线程安全单例1

22-习题-线程安全单例2~4

23-习题-线程安全单例5

24-第五章小结

7第六章Java并发编程cas、原子和LongAdder原理

01-本章内容

02-保护共享资源-加锁实现

03-保护共享资源-无锁实现

04-cas-工作方式

05-cas-慢动作分析

06-cas-volatile

07-cas-效率分析

08-cas-特点

09-原子整数-AtomicInteger

10-原子整数-AtomicInteger-updateAndGet

11-原子整数-AtomicInteger-updateAndGet原理

12-原子引用-AtomicReference

13-原子引用-ABA问题

14-原子引用-AtomicStampedReference

15-原子引用-AtomicMarkableReference

16-原子数组

17-原子数组

18-原子更新器

19-原子累加器

20-LongAdder原理-cas锁

21-LongAdder原理-缓存行伪共享

22-LongAdder源码-add

23-LongAdder源码-longAccumulate-cells未创建

24-LongAdder源码-longAccumulate-cell未创建

25-LongAdder源码-longAccumulate-cell已创建

26-LongAdder源码-sum

27-unsafe对象-获取

28-unsafe对象-cas相关方法

29-unsafe对象-模拟实现原子整数

30-第六章小结

7第七章Java并发编程产品经理实战

01-本章内容

02-不可变对象-使用

03-不可变对象-设计

04-享元模式-定义和体现

05-享元模式-不可变线程安全辨析

06-享元模式-自定义连接池-分析

07-享元模式-自定义连接池-实现

08-享元模式-自定义连接池-测试

09-享元模式-自定义连接池-总结

10-final-原理

11-第七章小结

7第八章Java并发编程自定义线程池

001-本章内容

002-自定义线程池-阻塞队列

003-自定义线程池-阻塞队列-poll增强

004-自定义线程池-线程池-实现

005-自定义线程池-线程池-任务提交&Worker实现

006-自定义线程池-线程池-take死等&poll超时

007-自定义线程池-线程池-当任务队列已满

008-自定义线程池-阻塞队列-offer增强

009-自定义线程池-线程池-拒绝策略

010-自定义线程池-线程池-拒绝策略-演示

011-ThreadPoolExecutor-池状态

012-ThreadPoolExecutor-构造方法

013-ThreadPoolExecutor-构造方法

014-Executors-固定大小线程池

015-Executors-带缓冲线程池

016-Executors-单线程线程池

017-ThreadPoolExecutor-submit

018-ThreadPoolExecutor-invokeAll

019-ThreadPoolExecutor-invokeAny

020-ThreadPoolExecutor-停止

021-ThreadPoolExecutor-停止-演示

022-设计模式-工作线程-定义

023-设计模式-工作线程-饥饿-现象

024-设计模式-工作线程-饥饿-解决

025-设计模式-工作线程-池大小

026-Timer的缺点

027-ScheduledThreadPoolExecutor-延时执行

028-ScheduledThreadPoolExecutor-定时执行

029-正确处理线程池异常

030-线程池应用-定时任务

031-线程池应用-定时任务-测试

032-tomcat-线程池

033-tomcat-线程池-配置

034-forkjoin-概念

035-forkjoin-使用

036-forkjoin-任务拆分优化

101-aqs-概述

102-aqs-自定义锁

103-aqs-自定义锁-测试

104-reentrantlock-加锁成功流程

105-reentrantlock-加锁失败流程

106-reentrantlock-解锁竞争成功流程

107-reentrantlock-解锁竞争失败流程

108-reentrantlock-锁重入原理

109-reentrantlock-可打断原理

110-reentrantlock-公平锁原理

111-reentrantlock-条件变量-await

112-reentrantlock-条件变量-signal

113-reentrantreadwritelock-使用

114-reentrantreadwritelock-注意事项

115-reentrantreadwritelock-应用之缓存

116-reentrantreadwritelock-应用之缓存-问题分析

117-reentrantreadwritelock-应用之缓存-实现

118-reentrantreadwritelock-应用之缓存-补充

119-reentrantreadwritelock-原理-t1-w.lock

120-reentrantreadwritelock-原理-t2-r.lock

121-reentrantreadwritelock-原理-t3-r.lock&t4-w.lock

122-reentrantreadwritelock-原理-t1-w.unlock

123-reentrantreadwritelock-原理-t1-w.unlock

124-reentrantreadwritelock-原理-t2-r.unlock t3-r.unlock

126-stampedlock-作用

127-stampedlock-演示

128-semaphore-作用

129-semaphore-演示

130-semaphore-应用-改进数据库连接池

131-semaphore-原理-acquire

132-semaphore-原理-release

135-countdownlatch-简介

136-countdownlatch-改进

137-countdownlatch-应用-等待多线程准备完毕

138-countdownlatch-应用-等待多个远程调用结束

139-future-应用-等待多个远程调用结束

140-cyclicbarrier-问题

141-cyclicbarrier-使用

142-cyclicbarrier-注意

143-线程安全集合类-概述

144-concurrenthashmap-错误用法

145-concurrenthashmap-computeifabsent

146-concurrenthashmap-原理-hashmap-回顾

147-concurrenthashmap-原理-hashmap-死链

148-concurrenthashmap-原理-hashmap-死链

149-concurrenthashmap-原理-hashmap-死链

150-concurrenthashmap-8-原理-属性&内部类&方法

151-concurrenthashmap-8-原理-构造

152-concurrenthashmap-8-原理-get

153-concurrenthashmap-8-原理-put

154-concurrenthashmap-8-原理-put

155-concurrenthashmap-8-原理-initable

156-concurrenthashmap-8-原理-addcount

157-concurrenthashmap-8-原理-size

158-concurrenthashmap-8-原理-transfer

159-concurrenthashmap-7-原理-结构

160-concurrenthashmap-7-原理-定位segment

161-concurrenthashmap-7-原理-put

162-concurrenthashmap-7-原理-rehash

163-concurrenthashmap-7-原理-rehash补充

164-concurrenthashmap-7-原理-get

165-concurrenthashmap-7-原理-size

166-linkedblockingqueue-原理-入队出队

167-linkedblockingqueue-原理-安全分析

168-linkedblockingqueue-原理-put

169-linkedblockingqueue-原理-vs array

170-concurrentlinkedqueue

171-copyonwritearraylist

点击查看更多

猜你喜欢:

进程和线程的区别和联系是什么?

Java处理高并发的3种方案

Java高并发解决方案

Java创建线程的方式和优缺点

传智教育java高手班

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/253987.html

(0)
上一篇 2022年5月9日
下一篇 2022年5月9日

相关推荐

发表回复

登录后才能评论