单例模式中的属性实现
生活随笔
收集整理的這篇文章主要介紹了
单例模式中的属性实现
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1 ///<summary>
2 /// 嘗試單例模式
3 /// </summary>
4 public class Db
5 {
6 /// <summary>
7 /// 需要的數據庫
8 /// </summary>
9 private static readonly SPMEntities db = new SPMEntities();//因為該字段是靜態的,而所在類又是單例的,所以該類生命周期中,該字段不會變。
10 static volatile Db _instance = null;
11 static readonly object padlock = new object();
12 /// <summary>
13 /// 私有的構造方法
14 /// </summary>
15 private Db()
16 {
17
18 }
19 public static Db GetInstance() //防止多線程并發導致失去單例,因此多重檢測
20 {
21 if (_instance == null)
22 {
23 lock (padlock)
24 {
25 if (_instance == null)
26 {
27 _instance = new Db();
28 }
29 }
30 }
31 return _instance;
32 }
33 public SPMEntities GetDb()//聲明為實例方法,調用時可以這樣: var entities = Db.GetInstance().GetDb();
34 {
35 return db;
36 }
37 }
?
轉載于:https://www.cnblogs.com/yy1234/p/8116458.html
總結
以上是生活随笔為你收集整理的单例模式中的属性实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: x1c 2017 安装mint18的坑—
- 下一篇: vue中使用keepAlive组件缓存遇