推 sayaku0210:推!!最近剛好在寫這方面的程式!感謝分享 05/19 00:45
這篇文章描述了使用 compress 並不會減少實際記憶體使用量
以及解決方法
========================= 問題描述 =========================
我有一個 ByteArray 為了節省記憶體 所以要壓縮
var byteArray:ByteArray = 某個很大的ByteArray;
我先觀察一下資料量
var length1:int = byteArray.length;
之後使用壓縮函數
byteArray.compress();
再次觀察
var length2:int = byteArray.length;
看一下壓縮比
trace((1-length2/length1) * 100 + "%");
印出來是 99.xxx%
但是觀察記憶體使用量卻沒有下降
========================== 解決方法 ====================
複製一份 byteArray
var byteArray2 :ByteArray = new ByteArray();
byteArray2.writeBytes(byteArray);
然後把舊的替換掉
byteArray.clear();
byteArray = byteArray2;
就可以看到記憶體確實下降了
--
blog:http://etrex.blogspot.com/
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.137.198.18