Java零基础并发编程入门

Java零基础并发编程入门


并发编程主要包括:

线程,同步,future,锁,fork/join, volatile,信号量,cas(原子性,可见性,顺序一致性),临界性,分布式



了解基础:

JMM:Java Memory Model(Java内存模型),定义了JVM在计算机内存中的工作方式。


Java内存模型的内部原理:


1. 堆内存是内存共享,包括方法区

2. 线程私有:虚拟机栈,本地方法栈,程序计数器


线程栈




多线程工作过程:



CPU运行内存模型:


count++ 读  修改  写(三个操作不是原子性的,适合单线程,多线程的时候可能出现脏读)

CPU cache(CPU高速缓存)因为CPU运行非常快,效率高,而内存的效率的比较低, 所以需要有个中介,CPU cache(高速缓存),主要是用来共享变量和数据

指令重排序:(指令执行乱序)





猜你喜欢

转载自blog.csdn.net/weixin_37766296/article/details/80516096