最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#中單例模式的三種寫法示例

 更新時(shí)間:2015年06月17日 09:40:06   投稿:junjie  
這篇文章主要介紹了C#中單例模式的三種寫法示例,本文分別給出代碼實(shí)例,需要的朋友可以參考下

第一種最簡單,但沒有考慮線程安全,在多線程時(shí)可能會(huì)出問題,不過俺從沒看過出錯(cuò)的現(xiàn)象,表鄙視我……

復(fù)制代碼 代碼如下:

public class Singleton
{
    private static Singleton _instance = null;
    private Singleton(){}
    public static Singleton CreateInstance()
    {
        if(_instance == null)
        {
            _instance = new Singleton();
        }
        return _instance;
    }
}

第二種考慮了線程安全,不過有點(diǎn)煩,但絕對(duì)是正規(guī)寫法,經(jīng)典的一叉
復(fù)制代碼 代碼如下:

public class Singleton
{
    private volatile static Singleton _instance = null;
    private static readonly object lockHelper = new object();
    private Singleton(){}
    public static Singleton CreateInstance()
    {
        if(_instance == null)
        {
            lock(lockHelper)
            {
                if(_instance == null)
                     _instance = new Singleton();
            }
        }
        return _instance;
    }
}

第三種可能是C#這樣的高級(jí)語言特有的,實(shí)在懶得出奇
復(fù)制代碼 代碼如下:

public class Singleton
{
    private Singleton(){}
    public static readonly Singleton instance = new Singleton();
}

哦,shit!

相關(guān)文章

最新評(píng)論

宿迁市| 涪陵区| 绩溪县| 同江市| 正镶白旗| 石台县| 凤冈县| 微山县| 博乐市| 公主岭市| 稻城县| 明水县| 西充县| 石泉县| 邮箱| 灯塔市| 于都县| 多伦县| 涿州市| 太仓市| 乳源| 克什克腾旗| 扎鲁特旗| 鄂托克前旗| 沿河| 和静县| 阆中市| 法库县| 昭苏县| 樟树市| 保亭| 常熟市| 塔城市| 华坪县| 龙泉市| 香格里拉县| 金塔县| 郴州市| 维西| 济宁市| 安龙县|