所谓java多线程,即Java 并发包 java.util.concurrent下面所有的类。
- 线程
- Java内存模型
- 线程安全
- CAS
- AQS
- JUC相关类总结梳理
线程
什么是线程
线程和进程的区别
Java怎么实现线程的
Java内存模型
为了屏蔽掉各种硬件和操作系统的内存访问差异,以实现Java程序在各种平台下都能达到一致的并发效果,Java虚拟机规范中定义了Java内存模型。
所以说,Java内存模型是一种规范,规范了java虚拟机与计算机内存是如何协同工作;
Java内存模型规定了一个线程如何及何时 可以看到 其他线程修改过 的共享变量的值,以及在必须时,如何同步的访问 共享变量。
*建议以上文字背会多品品 *
堆栈
线程、内存
线程安全
原子性:【JUC下 atomoic包】提供了互斥访问,同一时刻只能有一个线程对它进行操作
可见性:【volatile】一个线程对主内存的修改可以及时的被其他线程观察到
有序性:【Lock 同步锁】一个线程观察其他线程中的指令执行顺序,由于指令重排序的存在,该观察结果一般杂乱无序