作者etrexetrex (moonet)
看板Flash
标题[心得] ByteArray.compress 压缩函数
时间Wed May 18 17:21:29 2011
这篇文章描述了使用 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
1F:推 sayaku0210:推!!最近刚好在写这方面的程式!感谢分享 05/19 00:45