ajie
Java天下社區(qū) http://www.javatx.cn 歡迎大家上來交流Java技術(shù)
posts - 4, comments - 8, trackbacks - 0, articles - 0
BlogJava
::
首頁
::
新隨筆
::
聯(lián)系
::
聚合
::
管理
Java內(nèi)存管理之軟引用(Soft Reference)
Posted on 2005-12-18 00:29
ajie
閱讀(10991)
評(píng)論(6)
編輯
收藏
軟引用(Soft Reference)的主要特點(diǎn)是具有較強(qiáng)的引用功能。只有當(dāng)內(nèi)存不夠的時(shí)候才回收這類內(nèi)存,因此在內(nèi)存足夠的時(shí)候,他們通常不被回收。另外,這些引用對(duì)象還能保證在Java 拋出OutOfMemory異常之前,被設(shè)置為null。他可以用于實(shí)現(xiàn)一些常用資源的緩存,實(shí)現(xiàn)Cache的功能,保證最大限度的使用內(nèi)存而不引起OutOfMemory異常。
下面是軟引用的實(shí)現(xiàn)代碼:
1
/** */
/**
2
* 該類演示了Soft Reference的應(yīng)用
3
* 版權(quán) 本文版權(quán)屬Java天下
4
*/
5
package
cn.javatx;
6
7
import
java.lang.ref.SoftReference;
8
9
/** */
/**
10
*
@author
ajie
11
*/
12
13
public
class
softReference
{
14
15
/** */
/**
16
*
@param
args
17
*/
18
public
static
void
main(String[] args)
{
19
//
TODO Auto-generated method stub
20
A a
=
new
A();
21
22
//
使用a
23
a.test();
24
25
//
使用完了a,將它設(shè)置為soft引用類型,并且釋放強(qiáng)引用
26
SoftReference sr
=
new
SoftReference(a);
27
a
=
null
;
28
29
//
下次使用
30
if
(sr
!=
null
)
{
31
a
=
(A)sr.get();
32
a.test();
33
}
else
{
34
//
GC由于低內(nèi)存,已釋放a,因此需要重新裝載
35
a
=
new
A();
36
a.test();
37
a
=
null
;
38
sr
=
new
SoftReference(a);
39
}
40
}
41
42
}
43
44
class
A
{
45
public
void
test()
{
46
System.out.println(
"
Soft Reference test
"
);
47
}
48
}
49
軟引用技術(shù)的引進(jìn)使Java應(yīng)用可以更好的管理內(nèi)存,穩(wěn)定系統(tǒng),防止系統(tǒng)內(nèi)存溢出,避免系統(tǒng)崩潰。因此在處理一些占用內(nèi)存大而且聲明周期較長,但使用并不頻繁的對(duì)象時(shí)應(yīng)盡量應(yīng)用該技術(shù)。但事物總帶有兩面性的,有利也有弊,在某些時(shí)候?qū)浺玫氖褂脮?huì)降低應(yīng)用的運(yùn)行效率與性能,例如:應(yīng)用軟引用的對(duì)象的初始化過程較為耗時(shí),或者對(duì)象的狀態(tài)在程序的運(yùn)行過程中發(fā)生了變化,都會(huì)給重新創(chuàng)建對(duì)象與初始化對(duì)象帶來不同程度的麻煩,有些時(shí)候我們要權(quán)衡利弊擇時(shí)應(yīng)用。
Java天下
http://www.javatx.cn
評(píng)論
#
re: Java內(nèi)存管理之軟引用(Soft Reference)
回復(fù)
更多評(píng)論
2007-06-18 16:22 by
史壽偉
使用 if (sr != null) { 來判斷軟引用的對(duì)象是否可用是不對(duì)的。
sr 始終是不為空的,可能為空的是 sf.get() 而不是 sf 本身。
#
re: Java內(nèi)存管理之軟引用(Soft Reference)
回復(fù)
更多評(píng)論
2007-11-01 10:43 by
snoopy
@史壽偉
ding
#
re: Java內(nèi)存管理之軟引用(Soft Reference)
回復(fù)
更多評(píng)論
2008-12-19 13:48 by
1111
感覺有問題..
#
re: Java內(nèi)存管理之軟引用(Soft Reference)
回復(fù)
更多評(píng)論
2010-06-11 16:47 by
Rosen
@史壽偉
的確不需要再去判斷了。
#
re: Java內(nèi)存管理之軟引用(Soft Reference)
回復(fù)
更多評(píng)論
2011-11-02 17:02 by
DLevin
贊同,這個(gè)例子感覺不好。。。。@史壽偉
#
re: Java內(nèi)存管理之軟引用(Soft Reference)
回復(fù)
更多評(píng)論
2012-12-31 17:39 by
geeksnail
軟引用應(yīng)該用在頻繁使用的對(duì)象上吧,緩存不就是為了頻繁使用嗎?最后的總結(jié)是不是有點(diǎn)問題?
新用戶注冊(cè)
刷新評(píng)論列表
只有注冊(cè)用戶
登錄
后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
Powered by:
BlogJava
Copyright © ajie
日歷
<
2005年12月
>
日
一
二
三
四
五
六
27
28
29
30
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
7
公告
Java天下社區(qū) http://www.javatx.cn 歡迎大家上來交流Java技術(shù)
常用鏈接
我的隨筆
我的評(píng)論
我的參與
最新評(píng)論
留言簿
(1)
給我留言
查看公開留言
查看私人留言
隨筆檔案
2006年1月 (1)
2005年12月 (3)
搜索
最新評(píng)論
1.?re: Java內(nèi)存管理之軟引用(Soft Reference)
軟引用應(yīng)該用在頻繁使用的對(duì)象上吧,緩存不就是為了頻繁使用嗎?最后的總結(jié)是不是有點(diǎn)問題?
--geeksnail
2.?re: Java內(nèi)存管理之軟引用(Soft Reference)
贊同,這個(gè)例子感覺不好。。。。@史壽偉
--DLevin
3.?re: Java內(nèi)存管理之軟引用(Soft Reference)
@史壽偉
的確不需要再去判斷了。
--Rosen
4.?re: 利用Java Mail API 開發(fā)郵件通知服務(wù)
評(píng)論內(nèi)容較長,點(diǎn)擊標(biāo)題查看
--淡然一笑
5.?re: Java內(nèi)存管理之軟引用(Soft Reference)
感覺有問題..
--1111
閱讀排行榜
1.?Java內(nèi)存管理之軟引用(Soft Reference) (10991)
2.?Filter Servlet實(shí)例應(yīng)用(5052)
3.?利用Java Mail API 開發(fā)郵件通知服務(wù) (2702)
4.?Excel文檔生成解決方案 (JAVA Servlet)(1494)
評(píng)論排行榜
1.?Java內(nèi)存管理之軟引用(Soft Reference) (6)
2.?利用Java Mail API 開發(fā)郵件通知服務(wù) (2)
3.?Filter Servlet實(shí)例應(yīng)用(0)
4.?Excel文檔生成解決方案 (JAVA Servlet)(0)
主站蜘蛛池模板:
美美女高清毛片视频黄的一免费
|
麻豆69堂免费视频
|
大陆一级毛片免费视频观看
|
美女啪啪网站又黄又免费
|
亚洲色爱图小说专区
|
久久国内免费视频
|
美女视频免费看一区二区
|
人人狠狠综合久久亚洲婷婷
|
www.黄色免费网站
|
性生大片视频免费观看一级
|
亚洲日本中文字幕区
|
手机看片久久国产免费
|
国内少妇偷人精品视频免费
|
亚洲乱码国产乱码精华
|
亚洲AV无码一区二区乱子伦
|
日韩精品视频免费观看
|
香港a毛片免费观看
|
色天使亚洲综合一区二区
|
久久精品亚洲综合
|
国产男女猛烈无遮挡免费视频网站
|
日本高清不卡aⅴ免费网站
|
亚洲第一男人天堂
|
亚洲国产综合精品中文第一区
|
国产麻豆剧传媒精品国产免费
|
免费精品一区二区三区第35
|
美女露100%胸无遮挡免费观看
|
亚洲精品乱码久久久久久不卡
|
91制片厂制作传媒免费版樱花
|
男人扒开添女人下部免费视频
|
亚洲av极品无码专区在线观看
|
亚洲永久精品ww47
|
暖暖免费高清日本中文
|
午夜国产精品免费观看
|
又大又硬又粗又黄的视频免费看
|
日韩亚洲国产综合久久久
|
在线看片免费人成视久网
|
又大又硬又粗又黄的视频免费看
|
亚洲人成网亚洲欧洲无码
|
1区1区3区4区产品亚洲
|
色吊丝性永久免费看码
|
亚洲欧美综合精品成人导航
|