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

C#實現單件模式的三種常用方法

 更新時間:2015年04月02日 14:45:41   作者:令狐不聰  
這篇文章主要介紹了C#實現單件模式的三種常用方法,分析了單件模式的原理、功能與常用的三種實現方法,具有一定參考借鑒價值,需要的朋友可以參考下

本文實例講述了C#實現單件模式的三種常用方法。分享給大家供大家參考。具體分析如下:

單件模式是一種設計模式,即保持同時只能創(chuàng)建一個實例,下面列出了C#實現單件模式的三種方法

方法1

public sealed Class Singleton
{
  private static ReadOnly Singleton instance = new Singleton();
  private Singleton(){}
  public static Singleton Instance
  {
  get
  {
   return instance;
  }
  }
}

方法2

public sealed Class ClassicSingleton
{
 private static ClassicSingleton instance;
 private static object SyncRoot = new Object ();
 private ClassicSingleton(){}
 public static ClassicSingleton Instance
 {
  get
  {
   if(instance == null)
   {
    lock (SyncRoot)
    {
     if(instance == null)
     {
      instance = new ClassicSingleton ();
     }
    }
   }
   return instance;
  }
 }
}

方法3

public Class Singleton
{
 private static Singleton instance;
 // Added a static mutex for synchronising use of instance.
 private static System.Threading.Mutex mutex;
 private Singleton(){}
 static Singleton ()
 {
  instance = new Singleton();
  mutex = new System.Threading.Mutex();
 }
 public static Singleton Acquire()
 {
  mutex.WaitOne ();
  return instance;
 }
 // Each call to Acquire () requires a call to Release()
 public static void Release()
 {
  mutex.ReleaseMutex();
 }
}

希望本文所述對大家的C#程序設計有所幫助。

相關文章

  • C# 泛型List排序的實現

    C# 泛型List排序的實現

    本文主要介紹了C# 泛型List排序的實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-06-06
  • C#實現打開指定目錄和指定文件的示例代碼

    C#實現打開指定目錄和指定文件的示例代碼

    這篇文章主要為大家詳細介紹了如何利用C#實現打開指定目錄、打開指定目錄且選中指定文件、打開指定文件,感興趣的小伙伴可以嘗試一下
    2022-06-06
  • C#幾種獲取網頁源文件代碼的實例

    C#幾種獲取網頁源文件代碼的實例

    C#幾種獲取網頁源文件代碼的實例,需要的朋友可以參考一下
    2013-04-04
  • Unity UGUI的Image圖片組件使用詳解

    Unity UGUI的Image圖片組件使用詳解

    這篇文章主要為大家介紹了Unity UGUI的Image圖片組件使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • .NET?MemoryCache如何清除全部緩存

    .NET?MemoryCache如何清除全部緩存

    本文主要介紹了.NET?MemoryCache如何清除全部緩存,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • c#中GetType()與Typeof()的區(qū)別

    c#中GetType()與Typeof()的區(qū)別

    c#中GetType()與Typeof()的區(qū)別,需要的朋友可以參考一下
    2013-04-04
  • C# 設計模式系列教程-模板方法模式

    C# 設計模式系列教程-模板方法模式

    模板方法模式通過把不變的行為搬移到超類,去除了子類中的重復代碼,子類實現算法的某些細節(jié),有助于算法的擴展。
    2016-06-06
  • C#數組初始化簡析

    C#數組初始化簡析

    C#數組與其它C系列語言有著很多的不同,以前接觸的時候理解出現很大的偏差。尤其是對多維數組的認識,本文將詳細介紹C#數組初始化,需要的朋友可以參考下
    2012-11-11
  • C#實現子類與父類的相互轉換

    C#實現子類與父類的相互轉換

    這篇文章主要介紹了C#實現子類與父類的相互轉換,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • winform實現可拖動的自定義Label控件

    winform實現可拖動的自定義Label控件

    這篇文章主要為大家詳細介紹了winform實現可拖動的自定義Label控件,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03

最新評論

新野县| 寿宁县| 文昌市| 瓮安县| 清苑县| 辛集市| 格尔木市| 裕民县| 奉化市| 翁牛特旗| 葫芦岛市| 石柱| 菏泽市| 盐津县| 青浦区| 杂多县| 廉江市| 郧西县| 青铜峡市| 平潭县| 报价| 南通市| 杨浦区| 昌邑市| 屏南县| 四会市| 安塞县| 沙河市| 房山区| 长武县| 铜梁县| 靖州| 宜章县| 海丰县| 巴林左旗| 锡林浩特市| 三穗县| 浦县| 五大连池市| 上饶市| 敦煌市|