看板 Flash 關於我們 聯絡資訊
這篇文章描述了使用 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
sayaku0210:推!!最近剛好在寫這方面的程式!感謝分享 05/19 00:45