寄存器对JVM指令来说是不可见的 Leave a Comment / Java / March 25, 2013 March 25, 2013 JVM的指令集不会直接使用寄存器作为操作数,也就是说JVM指令看不到寄存器。 java中的volatile也跟寄存器无关,每个线程保留的变量副本不是在寄存器里,而是在JMM定义的“工作内存”里。这个内存并非寄存器。 当然JVM在运行时可以把某些内存映射到寄存器,寄存器的存取速度比内存要快得多,所以这样可以提高一点性能。 但不管怎么样,这只是运行时的优化,就JVM指令模型本身而言,它是看不到寄存器的。