单例模式
来源:互联网 发布:游戏简繁体转换软件 编辑:程序博客网 时间:2024/06/01 11:39
第一种最简单,但没有考虑线程安全,在多线程时可能会出问题,不过俺从没看过出错的现象,表鄙视我……
public class Singleton{
private static Singleton _instance = null;
private Singleton(){}//不写构造函数,系统会默认生成一个public的构造函数。如果写了构造函数,那么就不会自动生成了。
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;
}
}
转载自:http://shansun123.iteye.com/blog/669942
0 0
- 单例、单例模式
- 单例模式-多线程单例模式
- 单件模式(单例模式)
- 设计模式------单例模式
- 设计模式------单例模式
- 设计模式-单例模式
- 设计模式 - 单例模式
- 设计模式---单例模式
- 设计模式---单例模式
- PHP模式-单例模式
- 【设计模式】单例模式
- 设计模式-单例模式
- 设计模式----单例模式
- 设计模式--单例模式
- 设计模式-单例模式
- 单例模式(单子模式)
- 设计模式-单例模式
- [设计模式] 单例模式
- 前端开发细节-1
- MFC里面ipaddress控件:获取里面的ip地址为字符串型
- androidannotations
- java中构造方法和作用
- Android系统应用静默升级/安装
- 单例模式
- jdk下载-安装
- mybatis sql语句条件中变量 对应java类大写成员变量时 首字母可能小写
- 客户端禁止写cookie时,实现Session值跨页面传递
- 如何给oracle账户解锁
- 【Web前端】学习中遇到的问题(长期更新)
- softflowd生成netflow
- http://www.cnblogs.com/xguo/p/6098228.html
- Android 结构