作者del680202 (飘落的樱花)
看板java
标题Re: [问题] 效能上的问题
时间Sat May 10 01:56:08 2008
※ 引述《H45 (!H45)》之铭言:
: 在字串右边补空白
: API DOC:
: http://commons.apache.org/lang/api-release/index.html
: class StringUtils
: static java.lang.String rightPad(java.lang.String str, int size)
: Source Code:
: http://svn.apache.org/viewvc/commons/proper/lang/trunk/src/java/org/apache/commons/lang/
: http://0rz.tw/a543S (缩)
嗯....
实际用了一下
记忆体使用过量的问题还是存在
看了一下原始码测了一下
他的内含padding函式宣告的char阵列会用掉许多记忆体
然後他是用rightPad在去呼叫Padding跑回圈
效能也没获得改善= ="
我测试方式 自己把他的RightPad函式跟padding函式挖出来
RightPad大概是RUN 3840*6次
然後分别用Runtime.getRuntime().freememory()
跟System.currentTimeMillis()去抓可用记忆体跟毫秒
故意不呼叫他提供的padding函式结果
freememory:3112808
经过毫秒:156
然後叫用他的padding的结果
freememory:1544200
经过毫秒:312
所以其实跟我原先的函式差不多结果
我的测试方法应该没错啦= ="
虽然我也不知道他java抓出来的精准度到多少
但是这差距到是蛮明显的
请问这真的没改善方法吗?
我尝试用gc函式好像也没办法放掉多余记忆体
我是比较不在乎效能啦 但是记忆体就让我头大了
他使用量这样持续膨胀都没办法放出
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.167.188.205
※ 编辑: del680202 来自: 118.167.188.205 (05/10 01:59)
2F:→ del680202:阿...请问那是什麽?= =" 05/10 02:04
3F:推 kene:在文章列表上按 #, 然後输入 # 後面的字串 05/10 02:25
4F:推 godfat:直接复制贴上也可以 05/10 02:34
5F:推 ClareQ:想问你文字排版输出的需求?可以贴测试程式出来看看吧:) 05/10 02:55
6F:推 ClareQ:如果栏位宽度可以重复套用在每一列,可以参考#185Y5VkE看看 05/10 02:59
7F:→ del680202:我希望可以根据指定长度来得到固定长度栏位 05/10 11:28
8F:→ del680202:所以不能重覆套用 而且我比较头大是记忆体的问题 05/10 11:33
9F:→ del680202:为啥函式宣告占用的记忆体无法放出 囧 05/10 11:43
10F:推 qrtt1:因为类别载入的记忆体区预设GC演法算是不同区啊 05/10 11:48
11F:推 ClareQ:记忆体释放与JVM实作和设定有关,也不是用完就马上释放 05/10 15:40