随着硬件技术的飞速发展,多核处理器已经成为计算设备的标配,这使得开发人员需要掌握并发编程的知识和技巧,以充分发挥多核处理器的潜力。然而并发编程并非易事,它涉及到许多复杂的概念和原理。为了更好地理解并发编程的内在机制,需要深入研究内存模型及其在并发编程中的应用。本文将主要以 Java 内存模型来探讨并发编程中 BUG 的源头和处理这些问题的底层实现原理,助你更好地把握并发编程的内在机制。
我们今天要特别重点讲的,也就是我们本文的目的来理解 J V M 与我们的内存两者之间是如何协调工作的,它的名字就是Java内存模型(JMM)。
JMM就是Java内存模型(java memory model)。因为在不同的硬件生产商和不同的操作系统下,内存的访问有一定的差异,所以会造成相同的代码运行在不同的系统上会出现各种问题。所以java内存模型(JMM)屏蔽掉各种硬件和操作系统的内存访问差异,以实现让java程序在各种平台下都能达到一致的并发效果。
在进入正题之前,先问一个老生常谈的问题,相较于C,JAVA语言的优势是什么?相信学过JAVA的人都知道,无论是大学时的第一堂课还是JAVA相关书籍的第一章也都会讲到:一次编写、到处运行;真正意义上的实现了跨平台。
关注时代Java