91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

使用靜態變量實現C#中的單例模式

c#
小樊
93
2024-04-26 20:57:46
欄目: 編程語言

在C#中使用靜態變量實現單例模式可以確保只有一個實例存在,并且在整個應用程序中可以被訪問。以下是一個示例代碼:

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

    private Singleton() { }

    public static Singleton Instance
    {
        get
        {
            if (instance == null)
            {
                lock (lockObj)
                {
                    if (instance == null)
                    {
                        instance = new Singleton();
                    }
                }
            }
            return instance;
        }
    }

    public void DoSomething()
    {
        Console.WriteLine("Do something...");
    }
}

public class Program
{
    static void Main()
    {
        Singleton singleton1 = Singleton.Instance;
        Singleton singleton2 = Singleton.Instance;

        Console.WriteLine(ReferenceEquals(singleton1, singleton2)); // true

        singleton1.DoSomething();
    }
}

在上面的示例中,Singleton類包含一個私有的靜態變量instance和一個私有的構造函數,以確保外部無法直接實例化Singleton類。通過公共的靜態屬性Instance來返回Singleton的實例,使用雙重檢查加鎖來確保線程安全。在Program類中,可以使用Singleton.Instance來獲取單例實例,并進行操作。

0
佛教| 鄂托克前旗| 湖口县| 武定县| 纳雍县| 图木舒克市| 池州市| 青铜峡市| 桃园县| 临夏市| 德昌县| 屏山县| 峡江县| 怀柔区| 台东市| 林甸县| 砚山县| 柳林县| 和静县| 松阳县| 平舆县| 娱乐| 即墨市| 宜章县| 思茅市| 疏附县| 民勤县| 同仁县| 合阳县| 萨迦县| 丰镇市| 孝昌县| 偏关县| 彩票| 麟游县| 眉山市| 湘阴县| 红安县| 容城县| 绿春县| 珲春市|