fantasy-java
我越發的感覺到你就是我生命中的精靈,翻轉跳躍在我那空虛的時空;有人說世界上最美的是春天和愛情,在我眼中有你的地方就是最美的。
BlogJava
首頁
新隨筆
聯系
聚合
管理
隨筆-95 評論-31 文章-10 trackbacks-0
再理解單例
1
/** */
/**
2
*
@author
lx
3
* 線程不安全的單例,試想兩個線程都進入了if(singleton==null)塊里這個時候會初始化兩個對象,這只在第一次調用的時候會產生
4
*/
5
public
class
Unsafe_singleton
{
6
7
private
static
Unsafe_singleton singleton;
8
9
private
Unsafe_singleton()
{
10
}
11
12
public
static
Unsafe_singleton getInstance()
{
13
if
(singleton
==
null
)
{
14
singleton
=
new
Unsafe_singleton();
15
}
16
return
singleton;
17
}
18
}
19
public
class
Safe_singleton
{
20
21
private
static
Safe_singleton singleton;
22
23
private
Safe_singleton()
{
24
}
25
26
/** */
/**
27
* 這種寫法,非常消耗性能,因為只是第一次進來的時候可能會產生多個實例的情況,后面多線程都不會再進行實例化,那么調用的時候會很降低性能
28
*
@return
29
*/
30
public
static
synchronized
Safe_singleton getInstance()
{
31
if
(singleton
==
null
)
{
32
singleton
=
new
Safe_singleton();
33
}
34
return
singleton;
35
}
36
}
37
/** */
/**
38
*
@author
lx
39
* 這種寫法如果在創建和運行時的負擔不太繁重,那么這種寫法也可以保證多線程安全,每個線程進來都會new 創建此實例。
40
* 這種單例相對于每個線程來說確實是唯一的
41
*/
42
public
class
MoreSafe_singleton
{
43
44
private
static
MoreSafe_singleton singleton
=
new
MoreSafe_singleton();
45
46
public
static
MoreSafe_singleton getInstance()
{
47
return
singleton;
48
}
49
}
50
/** */
/**
51
*
@author
lx
52
* volatile 這個只在JDK1.5以上出現 它確保singleton變量被初始化時,多個線程正確地處理singleton變量
53
* 這種寫法如果性能是關注的重點,那么可以大大減少getInstance()的時間消耗
54
*/
55
public
class
VerySafe_singleton
{
56
57
private
volatile
static
VerySafe_singleton singleton;
58
private
VerySafe_singleton()
{}
59
60
public
static
VerySafe_singleton getInstance()
{
61
if
(singleton
==
null
)
{
62
synchronized
(VerySafe_singleton.
class
)
{
63
if
(singleton
==
null
)
{
//
里面為何在加上判斷是否為空?
64
//
因為試想如果有三個線程其中一個線程剛剛走出synchronized塊,這個時候又進來一個線程,
65
//
如果不判斷是否為空,這個又會實例一個變量那么就不是單例了
66
singleton
=
new
VerySafe_singleton();
67
}
68
}
69
}
70
return
singleton;
71
}
72
}
posted on 2010-09-02 15:44
朔望魔刃
閱讀(379)
評論(1)
編輯
收藏
所屬分類:
設計模式&&數據結構
評論:
#
re: 再理解單例
2010-09-06 12:34 |
xylz
http://m.tkk7.com/xylz/archive/2009/12/18/306622.html
回復
更多評論
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關文章:
節點<一>
存儲
"插件"的行為分析
創建模式
你是我的"朋友"
命令模式
命令模式
深入淺出命令模式~
再理解單例
裝飾者模式學習
<
2010年9月
>
日
一
二
三
四
五
六
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
1
2
3
4
5
6
7
8
9
常用鏈接
我的隨筆
我的文章
我的評論
我的參與
最新評論
留言簿
給我留言
查看公開留言
查看私人留言
隨筆分類
Android
flex(1)
git
gradle
IHE&DICOM&HL7的開源框架(1)
java(40)
JavaScript(2)
maven(1)
mybatis
netty(3)
python(3)
spring
svn(1)
即時通信(4)
各種整合
各種配置(9)
數據庫(2)
設計模式&&數據結構(11)
隨筆檔案
2018年8月 (1)
2018年3月 (1)
2018年1月 (1)
2017年12月 (3)
2017年11月 (6)
2017年10月 (1)
2017年8月 (2)
2017年7月 (1)
2017年6月 (1)
2017年5月 (1)
2017年2月 (1)
2016年12月 (3)
2016年10月 (1)
2016年9月 (2)
2015年12月 (1)
2015年7月 (2)
2015年5月 (1)
2015年2月 (3)
2015年1月 (1)
2014年12月 (2)
2014年7月 (1)
2014年5月 (4)
2014年3月 (1)
2013年9月 (6)
2013年8月 (1)
2013年7月 (3)
2013年4月 (1)
2012年7月 (2)
2012年6月 (4)
2012年5月 (2)
2012年1月 (1)
2011年12月 (2)
2011年11月 (2)
2011年9月 (1)
2011年6月 (1)
2011年5月 (1)
2011年3月 (4)
2011年2月 (2)
2010年12月 (2)
2010年9月 (9)
2010年8月 (4)
2010年4月 (1)
2010年3月 (1)
2010年1月 (2)
文章分類
文章(2)
生活(2)
英語學習(3)
詩歌(3)
文章檔案
2011年1月 (2)
2010年12月 (3)
2010年11月 (1)
2010年10月 (1)
2010年9月 (2)
2010年8月 (1)
收藏夾
技術文章(2)
娛樂博客
周德東
郭敬明
韓寒
鬼谷女
牛博
其實我是一個程序員
博客大巴~~
很牛的C++程序員
夢幻之旅
達內恩師
雪山飛鵠
高性能網站專家 淘寶 阿里架構師
搜索
最新評論
1.?re: jsp通過js按鈕導出word小結
下達
--q
2.?re: linux安裝mysql后root無法登錄
謝啦
--galo
3.?re: openfire_3.9.3集群配置
我這根本就不顯示hazelcast 這個插件包。請教下各位大神。
--openfre
4.?re: openfire_3.8.2集群配置[未登錄]
hazelcast-cache-config.xml 文件每一臺都要配4行ip嗎
--wp
5.?re: openfire_3.8.2集群配置
評論內容較長,點擊標題查看
--朔望魔刃
閱讀排行榜
1.?linux安裝mysql后root無法登錄(17855)
2.?maven三種打包插件(15143)
3.?openfire_3.8.2集群配置(9909)
4.?聯想y510p網卡設置(8603)
5.?swing日期控件(6853)
評論排行榜
1.?openfire_3.8.2集群配置(17)
2.?dcm4chee部署安裝(3)
3.?Java Service Wrapper工具把Java程序轉換為Windows服務小結(2)
4.?jsp通過js按鈕導出word小結(2)
5.?XML Schema<一>(1)
Powered by:
博客園
模板提供:
滬江博客
Copyright ©2025 朔望魔刃
主站蜘蛛池模板:
亚洲avav天堂av在线网毛片
|
亚洲一区二区三区成人网站
|
久久精品夜色国产亚洲av
|
亚洲国产成人久久综合一
|
亚洲人成电影青青在线播放
|
大桥未久亚洲无av码在线
|
在线观看亚洲精品专区
|
国产精品九九久久免费视频
|
男人进去女人爽免费视频国产
|
亚洲精品视频免费在线观看
|
女人18毛片特级一级免费视频
|
亚洲XX00视频
|
久久久久亚洲精品日久生情
|
午夜男人一级毛片免费
|
日韩免费a级在线观看
|
亚洲综合色在线观看亚洲
|
久久久久亚洲精品日久生情
|
亚洲AV无码专区亚洲AV桃
|
国产一级一毛免费黄片
|
久久久久久国产精品免费免费
|
免费在线精品视频
|
666精品国产精品亚洲
|
老子影院午夜伦不卡亚洲
|
免费国产叼嘿视频大全网站
|
最近中文字幕免费mv视频7
|
久久久久亚洲AV成人网人人软件
|
亚洲高清在线mv
|
国产亚洲精品免费
|
免费无码成人AV在线播放不卡
|
日本高清免费不卡视频
|
亚洲av日韩av高潮潮喷无码
|
亚洲精品理论电影在线观看
|
巨胸狂喷奶水视频www网站免费
|
99在线精品免费视频九九视
|
亚洲午夜爱爱香蕉片
|
亚洲伦理一二三四
|
一个人免费观看日本www视频
|
国内精自视频品线六区免费
|
精品亚洲一区二区三区在线播放
|
亚洲国产电影在线观看
|
精品一区二区三区免费观看
|