JVM
奋斗小菠萝
深入一些,原来更美好
展开
-
【JVM探险】-01-jvm内存区域管理
java虚拟机管理的内存区域 java虚拟机栈 这就是我们平时所说的栈,线程私有,每个方法方法执行开始会创建一个栈帧,用于存储局部变量表,操作数栈,动态链接,方法的返回地址等信息。 本地方法栈 本地方法栈调用的是native方法,同样也可能会oom 程序计数器 线程私有,记录当前线程执行的行号。如果线程执行的是java方法,则程序计数器记录虚拟机字节码指令的地址。...原创 2019-07-28 20:33:34 · 114 阅读 · 0 评论 -
【JVM探险】-02-java内存模型
volatile的内存语义 可见性 > 对volatile修饰的一个变量的读,总能看到任意一个线程对这个变量的最后写入。 操作是强制把写本地写缓冲区的内容写入主内存,同时使其他工作内存中的缓存行失效,读操作时从主内存读取。 禁止指令重排序 通过在cpu指令间插入内存屏障指令,用来禁止处理器指令发生重排序 jvm volatile指令重排序规则: 第一个...原创 2019-08-10 00:29:52 · 112 阅读 · 0 评论