网易云课堂微专业--Java高级开发工程师--多线程并发编程--学习笔记(二)
2019-03-12 19:54
711 查看
文章目录
- 第一章 多线程并发编程
- 第二节 线程安全问题
- 1.2.1 线程安全之可见性问题
- 多线程中的问题
- 从内存结构到内存模型
- 工作内存缓存
- 指令重排序
- 内存模型的含义
- Shared Variables共享变量描述
- 线程操作的定义
- 对于同步的规则定义
- happens-before先行发生原则
- final在JMM中的处理
- Word Tearing字节处理
- double和long的特殊处理
- volatile关键字总结
猛戳这里快速前往学习笔记(一)
第一章 多线程并发编程
第二节 线程安全问题
1.2.1 线程安全之可见性问题
多线程中的问题
- 所见非所得
- 无法肉眼去检测程序的准确性
- 不同的运行平台有不同的表现
- 错误很难重现
从内存结构到内存模型
工作内存缓存
指令重排序
内存模型的含义
Shared Variables共享变量描述
线程操作的定义
对于同步的规则定义
happens-before先行发生原则
final在JMM中的处理
Word Tearing字节处理
double和long的特殊处理
volatile关键字总结
1.2.2 线程安全之原子操作
竞态条件与临界区
共享资源
不可变对象
CAS机制
有兴趣的童鞋可以了解下Unsafe的源码,类似于直接操作内存的方法。
J.U.C包内的原子操作封装类
CAS的三个问题
1.2.3 JAVA 锁相关
同步关键字synchronized
同步关键字加锁原理
轻量级锁
偏向锁到轻量级锁
重量级锁-监视器(monitor)
Lock的核心API
ReadWriteLock
第三节 J.U.C并发编程包详解
1.3.1 AQS抽象队列同步器
学习中。。。未完待续
相关文章推荐
- Java高级开发工程师面试笔记
- java高级开发工程师学习路线图
- java学习:Java高级开发工程师面试考纲
- <Python高级全栈开发工程师-1>学习过程笔记【181-184】正则表达式 <特殊字符><函数>
- Java开发学习笔记之四:Servlet生命周期
- 对日合作Java、C/C++高级开发工程师/leader
- 黑马程序员学习笔记 JAVA高级视频_其他对象java.lang包中的类System与Runtime
- Java开发学习笔记之八:servlet之间的协作
- 学习笔记:java学习第一课 开发工具,环境配置
- Android高级应用开发(基础篇) - stage2 - 学习笔记
- iPhone/iPad高级应用与手游开发学习笔记:多点触摸与手势检测(三:UIPinchGestureRecognizer和UIRotationGestureRecognizer)
- Java开发学习笔记之十二:JSP语法
- SAP 高级应用开发 学习笔记 1 -- RFC
- 学习笔记9—JAVA高级视频03_图形用户界面GUI
- 《Spring 3.x 企业应用开发实战》学习笔记 第三章 IoC容器概述 3.2 相关Java基础知识 类装载器 反射机制
- Android高级应用开发(基础篇) - stage5 - 学习笔记
- Java学习笔记(十三)——通过Netbeans开发环境生成oracle数据库中表的对应hibernate映射文件
- Java 学习笔记 开发环境搭建JDK+Tomcat+Eclipse
- Java 学习笔记15:关于web开发中,全局变量的一点想法
- 职位:Java高级开发工程师/Senior Java Developer(北京)