發表文章

目前顯示的是有「Flex Module」標籤的文章

Unload Flex Module Completely?

Flex內部有提供Module的機制,透過Module的設計,可以把主程式切分成幾個swf,然後在需要的時候才去動態 loading和 instantiated,這樣作理論上可以調控網路使用量和記憶體使用量...可是... 這個機制加載時沒問題(目前),但是移除(unload)時卻是問題重重,最大的問題就是,移除掉module後原本佔用的記憶體永遠不會被釋放, 爬了很多文,發現有一些work around的撇步 ,稍微試了一下結果還是行不通: What We Know About Unloading Modules   Unloading modules completely, MXML   問題的關鍵應該是Flex內部有某些物件始終cache住讀進來的 module的 reference,導致即使表面上以為刪除,但實際上卻永遠不會被垃圾蒐集。時間關係,目前先不考慮用Module來做想要的功能了。

編譯Flex Module的方法

1. 在一般project中新增mxml module。不需特別去編譯,在編譯主application的時候就會被自動編譯 2. 新增一般的mxml檔,以module為最外層包裝,直接編譯該mxml就可以得到swf 3. 使用 mxmlc xxxModule.mxml 工具編譯。建立繼承自module的as class似乎只能用這方法 (編譯的參數可以參考 Compiling modules 這篇)