using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SingleDB
{
class DBsingle
{
//从代码上来分析,单例模式,首先向外提供了一个可被访问的实例化的对象,如果没有此对象时,
//该DBsingl类创建一个。如果遇到多线程并发访问,
//加上关键字Synchronized,
//上锁让没有持有该对象的类处于等待状态。
//当前持有该DB的线程任务结束之后,
// 处于等待中的线程才能逐个去持有该实例,
//去操作其方法。这样的一个过程
//在编程中被称为单例模式。
private static DBsingle DB = null;
//创建一个私有的全局变量
/*
* 如果有多线程并发访问时,上锁,让其排队等候,一次只能一人用。
*/
public static DBsingle getDB()
{
if (DB == null)
{//如果为空,创建本实例
DB = new DBsingle();
}
return DB;
}
/*
* 构造私有化,保证在系统的使用中,只有一个实例
*/
private DBsingle()
{
}
}
}
单例模式的简单入门
最新推荐文章于 2024-09-29 22:44:21 发布