少年阿賓

          那些青春的歲月

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            500 Posts :: 0 Stories :: 135 Comments :: 0 Trackbacks

          常用鏈接

          留言簿(22)

          我參與的團隊

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          package com.abin.lee.collection.singleton;
          /**
           * 雙重檢查加鎖 單例模式
           * @author abin
           * 這個單例模式寫法可以大大減少getInstance的時間消耗!
           */
          public class SingletonOne {
            /** 
               * volatile關鍵詞確保:當singleton變量被初始化成SingletonOne實例時,多個線程正確地處理singleton變量 
               */ 
           private volatile static SingletonOne singleton=null;
           public SingletonOne(){}
           public static SingletonOne getInstance(){
            if(null==singleton){//檢查實例,如果不存在就進入同步區塊
             synchronized (SingletonOne.class) {//注意,只有第一次才徹底執行這里的代碼
              if(null!=singleton){
               singleton=new SingletonOne();
              }
             }
            }
            return singleton;
           }
          }





          package com.abin.lee.collection.singleton;

          public class SingletonTwo {
           /**
            * volatile關鍵詞確保:當uniqueInstance變量被初始化成Singleton實例時,
            * 多個線程正確地處理uniqueInstance變量
            */
           private volatile static SingletonTwo singleton = new SingletonTwo();

           private SingletonTwo() {
           }

           public static SingletonTwo getInstance() {
            return singleton;
           }
          }

          posted on 2012-09-01 00:27 abin 閱讀(660) 評論(0)  編輯  收藏 所屬分類: JavaBasic
          主站蜘蛛池模板: 雅江县| 平南县| 翁牛特旗| 吉安市| 东海县| 大田县| 商河县| 应用必备| 新田县| 民县| 上高县| 田阳县| 沛县| 岳普湖县| 山东省| 清水河县| 防城港市| 临桂县| 安平县| 铜川市| 南川市| 宜兴市| 西吉县| 峡江县| 资阳市| 密云县| 巴南区| 浦江县| 阿尔山市| 临漳县| 淮滨县| 香格里拉县| 金塔县| 利津县| 黄浦区| 武宁县| 荥阳市| 含山县| 西乌珠穆沁旗| 雅江县| 德令哈市|