Zeus2's Blog
博客园
首页
新随笔
新文章
联系
管理
订阅
随笔- 26 文章- 3 评论- 20
WinForm使用的缓存类
给Winform使用的缓存类
namespace
HZ
{
using
System.Collections.Generic;
/**/
///
<summary>
///
全局统一的缓存类
///
</summary>
public
class
Cache
{
private
SortedDictionary
<
string
,
string
>
dic
=
new
SortedDictionary
<
string
,
string
>
();
private
static
volatile
Cache instance
=
null
;
private
static
object
lockHelper
=
new
object
();
private
Cache()
{
}
public
void
Add(
string
key,
string
value)
{
dic.Add(key, value);
}
public
void
Remove(
string
key)
{
dic.Remove(key);
}
public
string
this
[
string
index]
{
get
{
if
(dic.ContainsKey(index))
return
dic[index];
else
return
null
;
}
set
{ dic[index]
=
value; }
}
public
static
Cache Instance
{
get
{
if
(instance
==
null
)
{
lock
(lockHelper)
{
if
(instance
==
null
)
{
instance
=
new
Cache();
}
}
}
return
instance;
}
}
}
}
写得不好请多指教。主要是由于现在计算机内存太大了,就应该让程序合理使用内存提高速度。
posted on 2008-08-09 18:40
zeus2
阅读(262)
评论(3)
编辑
收藏
网摘
发表评论
回复
引用
查看
2008-08-09 22:14 |
StephenJu
你好,请问,第1个if (instance == null)多余吗?
感觉多余。
回复
引用
查看
2008-08-09 22:22 |
zeus2
呵呵,这是典型的双锁定单件模型。
主要是防止多线程产生2个以上实例的。
如果没有第一个if (instance == null)会频繁锁定lockhelp影响系统效率吧。
回复
引用
2008-08-17 11:34 |
StepehnJu [未注册用户]
不是都能到达同样的效果吗?单例模式!
新用户注册
刷新评论列表
标题
姓名
主页
Email
(博主才能看到)
验证码
*
看不清,换一张
[
登录
][
注册
]
内容(请不要发表任何与政治相关的内容)
网站首页
新闻频道
社区
小组
博问
网摘
人才
找找看
Remember Me?
登录
使用高级评论
新用户注册
返回页首
恢复上次提交
[使用Ctrl+Enter键可以直接提交]
该文被作者在 2008-08-09 18:46 编辑过
Google站内搜索
China-pub 计算机图书网上专卖店!6.5万品种 2-8折!
近千种 9-95 新二手计算图书火热销售中!
开发者征途系统新作:《设计模式——基于C#的工程化实现及扩展》
相关文章:
相关链接:
最新IT新闻:
谷歌李开复:我的传奇人生源于十句箴言
Twitter杀手Pownce被收购 两周内关闭服务
Live Search新增“即时返现”服务
MySpace CEO:明年广告营收仍会增长
2日科技博客精选:Windows占有率首次跌破90%
<
2008年8月
>
日
一
二
三
四
五
六
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
与我联系
发短消息
搜索
常用链接
我的随笔
我的空间
我的短信
我的评论
更多链接
我的参与
我的新闻
最新评论
我的标签
留言簿
给我留言
查看留言
我参加的小组
NHibernate
Visual Studio
我的标签
C# 多线程 空间 访问
(1)
C# 排序 算法
(1)
C++ Sqlite
(1)
随笔分类
ASP.NET
C#(1)
随笔档案
2008年11月 (2)
2008年8月 (1)
2008年5月 (1)
2008年3月 (1)
2008年1月 (1)
2007年12月 (3)
2007年11月 (3)
2007年7月 (5)
2007年6月 (9)
最新评论
阅读排行榜
1. 无软盘安装SATA硬盘的XP系统并启用AHCI模式(2144)
2. Microsoft Visual Studio 2008 Team Suite ZWT发飙了(1080)
3. Visual Studio 2008 响应很慢 是怎么回事?(603)
4. asp.net 2.0使用sqlite!(587)
5. sqlite怎么读不出中文来(399)
评论排行榜
1. Visual Studio 2008发布了(5)
2. Microsoft Visual Studio 2008 Team Suite ZWT发飙了(4)
3. 机子出问题了,向各位求助!(4)
4. WinForm使用的缓存类(3)
5. sqlite怎么读不出中文来(2)