理智地、负责任地、透明地推广Firefox
您可能也对这些感兴趣
切换

由于没有深入地用过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();
  }
};

导出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

哇!跟我一样,您也是一名Firefox用户,这些话题您可能感兴趣:

RSS feed | Trackback URI

1条评论都没有呢 立刻发表评论 »