java 板


LINE

JAVA不像C,不必担心记忆体回收,但我反而更乱了,因为听说... 为了让记忆体更容易被回收,物件用完了最好释放其参考。 以前又好像在网路上看过有人写: LinkedList用完最好要clear(); StringBuilder用完最好setLength(0); 那普通的小物件呢? 是不是最好每个物件都弄个clearReference()清除参考的方法,物件不用时呼叫它? 还是不用那麽麻烦,要超过多大的物件才要释放其参考呢? - - - 因为我想说先把物件释放参考,垃圾回收器就不会浪费更多力气, 去额外进阶计算这个物件是否要被回收,也许这样程式会更有效率? 还是我杞人忧天了? - - - 假设有两个简单的物件: public class A{ String s1; String s2; } public class B{ JComponent c1; JComponent c2; JComponent c3; } 每次某个物件A不用之後,就让它 s1=null; s2=null; 每次某个物件B不用之後,就让它 c1=null; c2=null; c3=null; 这样对吗?还是多此一举? - - - 请问大家写程式都会释放其参考吗?在什麽时候? --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.129.37.199
1F:→ darkk6:没有被参考到的物件才有机会被 GC,我想他指的应该是这个 08/22 09:28
2F:推 lachtchlee:垃圾回收器是个thread 不管你有无麻烦它 它还都不是傻 08/22 09:46
3F:→ lachtchlee:呼呼的在run 有点自动控制的优势 善用之 Java C++之不 08/22 09:55
4F:→ lachtchlee:同是也 Java 大声地向C++说 我有内建的thread你呢老 08/22 10:04
5F:→ lachtchlee:哥 08/22 10:05
6F:→ ptt10:所以想请问,是否应该让物件参考都变null,让物件更容易被GC 08/22 11:41
7F:→ ptt10:这样会比较有效率吗?还是这样是多余的,反而会让程式码更杂 08/22 11:44
8F:→ darkk6:我是觉得不需要啦= =a 08/22 11:50
9F:→ ptt10:恩XD 因为我每次按Ctrl+Alt+Del来看,记忆体好像都释放很慢 08/22 12:00
10F:→ ptt10:可能是我担心太多吧=.=a 08/22 12:03
11F:推 chchwy:java故意设计成这样的,就是不要你插手记忆体怎麽管 08/22 13:12
12F:推 COLDTURNIP:二楼,C++11 已经有 std::thread 了。 08/22 13:14
13F:→ COLDTURNIP:六楼,个人建议先从降低各元件相依性的复杂性着手, 08/22 13:16
14F:→ COLDTURNIP:然後在指向大型物件的地方开始考虑使用 WeekRef 08/22 13:18
15F:推 COLDTURNIP: a 08/22 13:21
16F:→ lachtchlee:自VC++ 6之後 我就投靠Java去了 请问COL~大std::thread 08/22 15:16
17F:→ lachtchlee:是语言内建的吗 应是lib吧^~^ 设定null是好习惯 08/22 15:20
18F:→ dou0228:http://is.gd/DZMHfq 08/22 16:55
19F:→ dou0228:为了 thread 跑去用 C++11? 有 apr util 可以用 08/22 16:56
20F:推 tomap41017:有同样问题+1,为何不设为null却要使用Ref classes..? 08/23 14:58
21F:→ dou0228:设 null 不代表一定会被gc,就算call System.gc() 也一样 08/23 15:50
22F:→ ptt10:所以大家觉得上面例子,A和B两个小物件用完要设回null吗0.0? 08/23 19:57
23F:→ ptt10:想请问到底 有设回null和没设定,哪种比较好?还是有分情况? 08/23 20:01
24F:推 lachtchlee:如果是局部变量 离开作用域 就自然消失 不必设null 08/23 20:17
25F:→ lachtchlee:成员变量 作用域为整个类体内 设null为上策 08/23 20:22
26F:推 lachtchlee:public class A{ // A是类名 不叫物件 08/23 20:31
27F:→ ptt10:恩恩,谢谢^ ^ ps.称物件是想说有new出来XD 08/24 08:57







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:WOW站内搜寻

TOP