打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
c#单态设计模式

#单态设计模式  

2010-12-07 15:10:52|  分类: c/c++算法 |字号 订阅

第一种最简单,但没有考虑线程安全,在多线程时可能会出问题,不过俺从没看过出错的现象,表鄙视我……

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

        {
            _instance = new Singleton();

        }

        return _instance;
    }

}

第二种考虑了线程安全,不过有点烦,但绝对是正规写法,经典的一叉 

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#这样的高级语言特有的,实在懒得出奇

public class Singleton

{

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

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
从C#的Singleton设计模式实现看.NET Framework特性对开发者的重要性
C# 设计模式-单例模式
Java单例设计模式的实现
设计模式-单例模式
Java设计模式-之Singleton单例模式 - 设计模式
Singleton
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服