yuyee

          JMM小記

          JMM,顧名思義,java memory model。他有3個特征:原子性,可見性,有序性。
          JVM系統中都有個一主存,JAVA中所有變量都是存儲在主存中,對所有線程都是共享的。
          而每條線程都有自己的工作內存,工作內存中保存的是主存中某些變量的值,線程對所有變量的修改都是在工作內存中進行,線程之間無法直接互相訪問,變量的傳遞都是通過主存完成。
          可見性:JMM中并發線程修改變量,必須將工作內存中的變量同步到主存后,其他線程才能訪問到
          有續性:通過JAVA提供的同步機制或者volatile關鍵字 來保證內存的有序性
          JAVA中保證多核系統JMM緩存一致性原則:happens-before ordering(先行發生排序)
          JAVA提供了
          1.synchronized關鍵字
          2.volatile關鍵字
          3.final關鍵字
          4.同步包中的locks
          5.同步包中的原子類

          posted on 2010-10-25 15:04 羔羊 閱讀(152) 評論(0)  編輯  收藏 所屬分類: jvm

          主站蜘蛛池模板: 大关县| 墨玉县| 庆城县| 景谷| 曲水县| 远安县| 都兰县| 盖州市| 理塘县| 会泽县| 六枝特区| 巴里| 富平县| 龙陵县| 炎陵县| 重庆市| 海丰县| 宁阳县| 宜黄县| 阿鲁科尔沁旗| 永登县| 仙桃市| 松江区| 大庆市| 定结县| 宁明县| 岢岚县| 双流县| 鄂温| 北海市| 武宁县| 三原县| 滨海县| 和平县| 广西| 高清| 北辰区| 循化| 甘泉县| 巴马| 静海县|