原创 Java volatile關鍵字的作用

1.可見性 JVM定義了線程與主內存之間的抽象關係:共享變量存儲在主內存,每個線程都有一個私有的本地內存,本地內存保存了該線程使用到的主內存的副本拷貝,線程對變量的所有操作都必須在本地內存中進行,而不能直接讀寫主內存的變量。     例

原创 Synchronized和CAS

什麼是CAS? CAS的全稱是 Compare And Swap(Compare And Exchange) 比較並交換, cas(v,a,b) 變量v,期待值a, 修改值b CAS底層通過Lock指令實現。 以 java.util.c

原创 每天學習一點點之HashMap

HashMap默認大小 static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // aka 16 HashMap最大容量,2的30次方  static final int MAXIMU