volatile特性
為什麼保證可見性
無法解決執行緒安全問題
當出現多寫場景時無法保證原子性
public class test
public static void main(string args) ;
}.start();
}while(thread.activecount()>1) //保證前面的執行緒都執行完
thread.yield();
system.out.println(test.inc);
}}
使用場景
適用於一寫多讀的場景,解決變數同步問題
volatile 變數和 atomic 變數、synchronized的區別
volatile修飾陣列
volatile修飾的變數如果是物件或陣列之類的,其含義是物件獲陣列的位址具有可見性,但是陣列或物件內部的成員改變不具備可見性
推薦閱讀:
你真的了解volatile關鍵字嗎?
JAVA基礎例題整理
計算圓球的體積 scanner input new scanner system.in system.out.println 請輸入圓球的半徑 r input.nextfloat v float float 4 3 r r r 3.14 system.out.println 圓球半徑 r n球的體積...
java基礎知識整理
一。構造方法,構造 塊,靜態 塊,靜態方法的區別 public class hellob extends helloa public hellob static 構造 塊 是給所有的物件進行初始化,也就是說,所有的物件都會呼叫乙個 塊。只要物件一建立。就會呼叫這 個 塊。建構函式 是給與之對應的物件...
java基礎學習整理大綱
工作也又有一段時間了,總是發現自己的提公升不快,很多基礎的東西一段時間不用就忘了。最近下了下決心,決定把所有學過的東西都記錄一下,隨時回顧。溫故而知新我算是真正的感受其中的樂趣了。人總是思想的巨人,行動的矮子。總是習慣於過安逸舒坦的日子,久而久之溫水煮青蛙,當自己真正明白的時候發現已經完了。本次基礎...