2005-5
2
由于没有深入地用过c,对于一个进程对内存和CPU的占用并不太熟悉。
我在Flash中,觉得效率同样重要。
建立一个MC,一定要把它拿掉;setInterval,一定要有对应的clearInterval。
可是在制作一个功能的时候,遇到这样一个问题:
要作一个McTip的方法,就是鼠标移动到MC上,会显示出一个提示内容(类似HTML超级链接标签中的alt属性)
那么,显示的提示,当然是一个MC了(直接用文本太丑了)。那么就有两种方法:
一、建立好一个hint_MC,鼠标滑过MC的时候hint_MC上的某个文本显示提示文字。鼠标移开后hint_MC._visible = false;
二、每次鼠标划过,建立一个hint_MC,鼠标一开就彻底把MC.removeMovieClip();
我个人猜测,第一种对CPU耗占比第二种低;而第二种则更加照顾内存。不知道是否果真如此。:)
例子
—–已经有结果 ,感谢xyf—–
引用自
(2005-05-02 20:41:12) 徐丰羽
当remove一个MC后,并不会真的立即从内存中清除.
报歉刚看电影中没发现.
/*btn是一个按钮,mc是库中一个MC*/
btn.onRelease = function() {
for (var i = 0; i<500; i++) {
_root.attachMovie("mc", "mc"+i, i);
}
for (var i = 0; i<500; i++) {
_root["mc"+i].removeMovieClip();
}
};
当remove一个MC后,并不会真的立即从内存中清除.
报歉刚看电影中没发现.
/*btn是一个按钮,mc是库中一个MC*/
btn.onRelease = function() {
for (var i = 0; i<500; i++) {
_root.attachMovie("mc", "mc"+i, i);
}
for (var i = 0; i<500; i++) {
_root["mc"+i].removeMovieClip();
}
};
导出SWF,运行SWF并在任务管理器中查看内存使用情况就会发现内存没有被立即释放.
LUAR's BLOG里有两篇并于垃圾回收的文章可以看看. Flash效率问题之前我译过gotoandplay.it上的一篇文章可以看看:
http://www.xfykzz.com/blog/blogview.asp?logID=58
http://www.xfykzz.com/blog/blogview.asp?logID=47 [/quote]
本文来自:http://www.awflasher.com/blog/archives/227
还没找到您要的东西?Google试试看吧,
Google更注重原创、时效性好的文章:
Google更注重原创、时效性好的文章:
| 相关阅读 | 本月十大 |



