Java实战应用50篇(一)-Java并发编程:volatile关键字解析
前言
volatile這個關鍵字可能很多朋友都聽說過,或許也都用過。在Java 5之前,它是一個備受爭議的關鍵字,因為在程序中使用它往往會導致出人意料的結果。在Java 5之后,volatile關鍵字才得以重獲生機。
volatile關鍵字雖然從字面上理解起來比較簡單,但是要用好不是一件容易的事情。由于volatile關鍵字是與Java的內存模型有關的,因此在講述volatile關鍵之前,我們先來了解一下與內存模型相關的概念和知識,然后分析了volatile關鍵字的實現原理,最后給出了幾個使用volatile關鍵字的場景。
以下是本文的目錄大綱:
一.內存模型的相關概念
二.并發編程中的三個概念
三.Java內存模型
四..深入剖析volatile關鍵字
五.使用volatile關鍵字的場景
一.內存模型的相關概念
大家都知道,計算機在執行程序時,每條指令都是在CPU中執行的,而執行指令過程中,勢必涉及到數據的讀取和寫入。由于程序運行過程中的臨時數據是存放在主存(物理內存)當中的,這時就存在一個問題,由于CPU執行速度很快,而從內存讀取數據和向內存寫入數據的過程跟CPU執行指令的速度比起來要慢的多,因此如果任何時候對數據的操作都要通過和內存的交互來進行,會大大降低指令執行的速度。因此在CPU里面就有了高速緩存。
也就是,當程序在運行過程中,會將運算需要的數據從主存復制一份到CPU的高速緩存當中,那么CPU進行計算時就可以直接從它的高速緩存讀取數據和向其中寫入數據,當運算結束之后&#x
總結
以上是生活随笔為你收集整理的Java实战应用50篇(一)-Java并发编程:volatile关键字解析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MATLAB从入门到精通-APP调用si
- 下一篇: linux实战应用案例: 如何在 Lin