Java的long和double类型的赋值操作为什么不是原子性的?

对一个没有用volatile修饰的long或double类型的写操作会被拆分成两次写,每次写该类型的32-bit数据,这就导致了在多线程的场景下,可能一个线程看到了对这个64-bit数据类型写入的前32-bit数据,和被另一个线程的后32-bit的数据 使用volatile修饰后的long和double类型的读写操作是原子性的 对其引用类型(Long/Double)的读写操作总是原子的,尽管他们的
相关文章
相关标签/搜索