惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Engineering at Meta
Engineering at Meta
月光博客
月光博客
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
V
Visual Studio Blog
大猫的无限游戏
大猫的无限游戏
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
量子位
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
腾讯CDC
S
Securelist
Know Your Adversary
Know Your Adversary
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
博客园 - 【当耐特】
V2EX - 技术
V2EX - 技术
J
Java Code Geeks
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Hugging Face - Blog
Hugging Face - Blog
Cisco Talos Blog
Cisco Talos Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
阮一峰的网络日志
阮一峰的网络日志
美团技术团队
W
WeLiveSecurity
S
SegmentFault 最新的问题
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
宝玉的分享
宝玉的分享
博客园 - Franky
S
Security Affairs
博客园 - 司徒正美
V
V2EX
K
Kaspersky official blog
T
Threatpost
NISL@THU
NISL@THU
博客园 - 叶小钗
Help Net Security
Help Net Security
PCI Perspectives
PCI Perspectives
IT之家
IT之家
小众软件
小众软件
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
Last Week in AI
Last Week in AI
Jina AI
Jina AI
爱范儿
爱范儿
罗磊的独立博客
N
News and Events Feed by Topic
博客园 - 三生石上(FineUI控件)
有赞技术团队
有赞技术团队
P
Proofpoint News Feed
L
LINUX DO - 热门话题
Google Online Security Blog
Google Online Security Blog
雷峰网
雷峰网
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint

博客园 - 神秘狭

成熟男人必看的5个故事 很有感觉的爱 在新电脑上部署网站发现的问题(asp.net) 十句话 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 问题 - 神秘狭 EXCEL下载功能在XP系统中运行是好好的,到windows2003系统上,就报错 ASP.NET设置数据格式与String.Format和DataFormatString使用总结 - 神秘狭 - 博客园 VS2005打开js文件,中文都是乱码 回发或回调参数无效。在配置中使用 问题解放方法 - 神秘狭 - 博客园 编译时DEBUG中dll文件删除问题 javascript日期比较 asp.net获取URL和IP地址 (转) QQ登不上去,提示不能访问QQ服务器端口---解决办法 很有感觉的两首歌 keyAscii码表 自制花肥小妙招(转) 让网页上的图片都动起来 黄石火车票信息 @键和"键互换问题
设计模式学习(一) 单件模式
神秘狭 · 2007-11-29 · via 博客园 - 神秘狭

一、单件模式的意图
保证一个类仅有一个实例,并提供一个访问它的全局访问点。

二、应用场景

l         每台计算机可以有若干个打印机,但只能有一个Printer Spooler,避免两个打印作业同时输出到打印机。
(摘自吕震宇的C#设计模式(7)-Singleton Pattern

l         PC机中可能有几个串口,但只能有一个COM1口的实例。

l         系统中只能有一个窗口管理器。

l         .NET Remoting中服务器激活对象中的Sigleton对象,确保所有的客户程序的请求都只有一个实例来处理。

三、实例

 1 1public sealed class Spooler 
 2 2{
 3 3    static Spooler instance=null;
 4 4
 5 5    private Spooler()
 6 6    {
 7 7    }

 8 8
 9 9    public static Spooler Instance
1010    {
1111        get
1212        {
1313            if (instance==null)
1414            {
1515                instance = new Spooler();
1616            }

1717            return instance;
1818        }

1919    }

2020}

1sealed class Singleton
2{
3   private Singleton();
4   public static readonly Singleton Instance=new Singleton();
5}

以上两个实例产生的效果相同.但存在多线程时的并发性,安全性, 无法实现延迟初始化等问题.可以查看一下两个网页来了解更多单件模式的知识.

http://terrylee.cnblogs.com/archive/2005/12/09/293509.html

http://www.cnblogs.com/birdshover/archive/2006/06/15/424656.aspx