1 介绍
-
说明:保证一个类仅有一个实例,并提供一个访问它的全局访问点。(整个系统只需要拥有一个全局对象时,例如日志,数据库连接)
-
作用:主要解决一个全局使用的类频繁地创建与销毁。
-
注意:在使用单例模式时,构造函数是私有的。
-
优点:
1、在内存里只有一个实例,减少了内存的开销,尤其时频繁的创建和销毁实例。
2、避免对资源的多重占用(写文件操作)‘
2 实现方法
- 懒汉模式
- 饿汉模式
2.1 懒汉模式
- 懒汉:
它在需要对象时,才判断是否已有对象,如果没有就立即创建一个对象,然后返回;如果已经有对象了,就不创建立即返回。
只在外部对象第一次请求实例的时候才去创建。(调用时才实例化) - 特点:运行时获得对象的速度慢,但加载类的时候比较快。在整个应用的生命周期只有一部分时间在占用资源。
- 使用:
1)线程不安全写法:
static Log GetInstance(