标签:java 关键字 保护 解决 变量 声明变量 操作 jvm ola
Java 内存模型要求,变量的读操作和写操作都必须是原子操作(最低安全性)。
但是也有例外,对于非 volatile 类型的 double 和 long 变量,JVM 允许将 64 位的读操作或写操作分为两个 32 位的操作,因此,多线程中使用共享可变的 long、double 变量是不安全的。
解决办法?用 volatile 关键字声明变量,或用锁保护变量的读写。
标签:java 关键字 保护 解决 变量 声明变量 操作 jvm ola
原文地址:https://www.cnblogs.com/xmsx/p/9720406.html