博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
设计模式读书笔记-单件模式(创建型模式)
阅读量:5024 次
发布时间:2019-06-12

本文共 1235 字,大约阅读时间需要 4 分钟。

让一个类只有一个对象,全局唯一

非多线程模式,实现方法:

方法1:

1     public class SingletonTest2     {3         public static readonly SingletonTest Instance = new SingletonTest();4         private SingletonTest() { }5     }
View Code

方法2:

1     public class SingletonTest2     {3         public static readonly SingletonTest Instance;4         static SingletonTest()5         {6             Instance = new SingletonTest();7         }8         private SingletonTest() { }9     }
View Code

 多线程模式,实现方法:

1     public class SingletonTest 2     { 3         private static volatile SingletonTest instance = null; 4         private static object lockobj = new object(); 5         private SingletonTest() { } 6         public static SingletonTest Instance 7         { 8             get 9             {10                 if (instance == null)11                 {12                     lock (lockobj)13                     {14                         if (instance == null)15                         {16                             instance = new SingletonTest();17                         }18                     }19                 }20                 return instance;21             }22         }23     }
View Code

 

转载于:https://www.cnblogs.com/dishiyicijinqiu/p/4617003.html

你可能感兴趣的文章
一个自己写的判断2个相同对象的属性值差异的工具类
查看>>
10 华电内部文档搜索系统 search03
查看>>
[HIHO1149]回文字符序列(dp)
查看>>
[HDU1402]A * B Problem Plus(FFT)
查看>>
[CF803C] Maximal GCD(gcd,贪心,构造)
查看>>
逆时针旋转的矩阵变换
查看>>
第10周15/16/17
查看>>
【数据库】SQL两表之间:根据一个表的字段更新另一个表的字段
查看>>
四六级作文常见错误解析(转载)
查看>>
Tomcat
查看>>
./是当前目录 ../是当前的上一级目录。上上级就是../../一般绝对路径时候常用...
查看>>
linux支持FTP和SFTP服务【1】
查看>>
树的递归与非递归遍历方法
查看>>
每天一个Linux命令(6):rmdir命令
查看>>
oracle连接的三个配置文件(转)
查看>>
Vim配置文件(Vimrc)
查看>>
RecyclerView 局部刷新(获取viewHolder 去刷新)
查看>>
PHP表单(get,post)提交方式
查看>>
使用vbs或者bat脚本修改IE浏览器安全级别和选项
查看>>
Silverlight入门
查看>>