2012-01-05 72 views
1

我是否不必擔心添加到場景中不再顯示的影片剪輯中的所有偵聽器和類實例?實例離開場景後清理?

我在問,因爲我想知道在場景中完成影片剪輯的實例後清理是否合理。

回答

2

是的,你需要清理。

如果事件偵聽器未被刪除,事件偵聽器將防止垃圾回收。
或者,您可以使用弱事件偵聽器。然後,只要所有其他對剪輯的引用都被刪除,監聽器就不會阻止垃圾回收。

AS3: Weakly Referenced Listeners

+0

感謝您提供本文的信息和鏈接。 – IneedHelp 2012-01-05 18:30:16

1

實際上它取決於您的應用程序/ swf文件。

如果您的應用程序很複雜/廣泛,並且會用於冗長的會話時間明智的話,那麼您應該手動刪除所有引用,停止動畫並將實例歸零。

請記住,即使實例處於關閉狀態或從顯示列表中刪除,它仍會使用CPU和內存資源。

這是一個很好的工作實踐,但對於較小的項目來說並不重要。

+0

謝謝您的有用建議。我正在處理一個管理大量資源和交互元素的大型站點,所以我想我必須清理它才能讓它在客戶機器上保持亮度。 當你說我應該停止動畫時,你指的是什麼?不再在舞臺上的Movie Clip實例中的動畫對應用程序沒有影響,是嗎? – IneedHelp 2012-01-05 18:37:41

+1

是的。一旦動畫movieclip已經實例化,它將繼續動畫,儘管離開舞臺。雖然針對移動優化,這是一個非常有用的閱讀。 http://help.adobe.com/en_US/as3/mobile/flashplatform_optimizing_content.pdf – crooksy88 2012-01-05 19:45:58

+0

嘿,我從來沒有想到會是這樣。感謝您提供內容優化的信息和參考。 – IneedHelp 2012-01-05 20:19:16