欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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)煩,但絕對是正規(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)文章

  • C#中abstract的用法詳解

    C#中abstract的用法詳解

    abstract可以用來修飾類,方法,屬性,索引器和時(shí)間,這里不包括字段. 使用abstrac修飾的類,該類只能作為其他類的基類,不能實(shí)例化,而且abstract修飾的成員在派生類中必須全部實(shí)現(xiàn),不允許部分實(shí)現(xiàn),否則編譯異常
    2016-12-12
  • 理解C#中的Lambda表達(dá)式

    理解C#中的Lambda表達(dá)式

    這篇文章主要介紹了理解C#中的Lambda表達(dá)式,本文用實(shí)例代碼來講解Lambda表達(dá)式,用不同的角度總結(jié)對它的認(rèn)識(shí),需要的朋友可以參考下
    2015-04-04
  • NancyFx框架檢測任務(wù)管理器詳解

    NancyFx框架檢測任務(wù)管理器詳解

    這篇文章主要為大家詳細(xì)介紹了NancyFx框架檢測任務(wù)管理器的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • C#中常用的運(yùn)算符總結(jié)

    C#中常用的運(yùn)算符總結(jié)

    在本篇文章里小編給大家分享了關(guān)于C#中常用的運(yùn)算符的知識(shí)點(diǎn)總結(jié),需要的朋友們跟著學(xué)習(xí)下。
    2019-03-03
  • C#詞法分析器之構(gòu)造NFA詳解

    C#詞法分析器之構(gòu)造NFA詳解

    本篇文章介紹了,C#詞法分析器之構(gòu)造NFA詳解。需要的朋友參考下
    2013-05-05
  • C#中按引用傳遞與按值傳遞的區(qū)別,以及ref與out關(guān)鍵字的用法詳解

    C#中按引用傳遞與按值傳遞的區(qū)別,以及ref與out關(guān)鍵字的用法詳解

    以下是對C#中按引用傳遞與按值傳遞的區(qū)別,以及ref與out關(guān)鍵字的用法進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過來參考下
    2013-07-07
  • c#使用簡單工廠模式實(shí)現(xiàn)生成html文件的封裝類分享

    c#使用簡單工廠模式實(shí)現(xiàn)生成html文件的封裝類分享

    這篇文章主要介紹了運(yùn)用了簡單工廠模式實(shí)現(xiàn)頁面靜態(tài)化封裝類,思路比較簡單,大家可根據(jù)自己的思路再擴(kuò)展此類
    2014-01-01
  • C#實(shí)現(xiàn)加密exe文件

    C#實(shí)現(xiàn)加密exe文件

    這篇文章主要為大家詳細(xì)介紹了C#如何實(shí)現(xiàn)加密exe文件的功能,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)C#有一定的幫助,感興趣的小伙伴可以跟隨小編一起了解一下
    2023-01-01
  • C#如何連接服務(wù)器共享文件夾

    C#如何連接服務(wù)器共享文件夾

    這篇文章主要為大家詳細(xì)介紹了C#如何連接服務(wù)器共享文件夾,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • C# 獲取硬件參數(shù)的實(shí)現(xiàn)方法

    C# 獲取硬件參數(shù)的實(shí)現(xiàn)方法

    這篇文章主要介紹了C# 獲取硬件參數(shù)的實(shí)現(xiàn)方法的相關(guān)資料,希望通過本文能幫助到大家,讓大家實(shí)現(xiàn)這樣的功能,需要的朋友可以參考下
    2017-10-10

最新評論