共享模型之内存

一、Java 内存模型

共享模型之内存_多线程

二、可见性

1.退不出的循环

共享模型之内存_解决方法_02
共享模型之内存_解决方法_03
共享模型之内存_java_04

2.解决方法

共享模型之内存_缓存_05

3.可见性 vs 原子性

共享模型之内存_解决方法_06
共享模型之内存_解决方法_07

4.原理之 CPU 缓存结构

CPU 缓存结构

共享模型之内存_多线程_08
共享模型之内存_解决方法_09
共享模型之内存_java_10

CPU 缓存读

共享模型之内存_解决方法_11
共享模型之内存_解决方法_12

CPU 缓存一致性

共享模型之内存_解决方法_13

内存屏障

共享模型之内存_缓存_14

5. 模式之 Balking

共享模型之内存_java_15
共享模型之内存_可见性_16

三、有序性

共享模型之内存_解决方法_17

1.原理之指令级并行

共享模型之内存_可见性_18
共享模型之内存_缓存_19
共享模型之内存_java_20
共享模型之内存_缓存_21
共享模型之内存_多线程_22
共享模型之内存_缓存_23
共享模型之内存_解决方法_24

2.诡异的结果

共享模型之内存_解决方法_25
共享模型之内存_解决方法_26
共享模型之内存_缓存_27
共享模型之内存_解决方法_28

3.解决方法

共享模型之内存_java_29
共享模型之内存_可见性_30

4. 原理之 volatile

共享模型之内存_缓存_31
共享模型之内存_缓存_32
共享模型之内存_解决方法_33
共享模型之内存_解决方法_34
共享模型之内存_缓存_35
共享模型之内存_可见性_36
共享模型之内存_多线程_37
共享模型之内存_java_38
共享模型之内存_java_39
共享模型之内存_解决方法_40
共享模型之内存_多线程_41

5.happens-before

共享模型之内存_多线程_42
共享模型之内存_解决方法_43
共享模型之内存_缓存_44
共享模型之内存_可见性_45
共享模型之内存_解决方法_46

6.习题

balking 模式习题

共享模型之内存_java_47

线程安全单例习题

共享模型之内存_java_48
共享模型之内存_多线程_49
共享模型之内存_java_50
共享模型之内存_缓存_51