0

私もこのトピックを見つけましたが、他のトピックの問題は解決しません

他のswcをロードするモジュールローダーがありますが、アプリケーションからメモリを見ると、モジュールがロードされるたびに前のモジュールがアンロードされないため、メモリが増加しているようです。

これが私がモジュールをロードする方法です:

  <module:ModuleViewLoader id="moduleViewLoader" moduleManager="{presenter.deviceModuleManager}"
                             top="0" left="0" right="0" bottom="0"
                             moduleId="configurationView"
                             height="100%" 
                             width="100%" enabled="{presenter.deviceLoadable}"
                             ready="presenter.handleModuleLoaded(moduleViewLoader.loadedModule)"
                             error="presenter.handleModuleLoadError(event)"
                             unload="presenter.closeConfiguration(event)">
        <module:loadPolicy>
            <module:BasicLoadPolicy/>
        </module:loadPolicy>
    </module:ModuleViewLoader>

モジュールを離れるとき、私はこれを行います:

public function resetModuleSpecifications():void {
        closeConfiguration();
        changewatcher.unwatch();
        loadedModule = null;
        lastLoadedDevice = null;
        deviceModuleManager=null;
        deviceBeingConfigured = null;
         }

しかし、モジュールローダーはメモリ内のオブジェクトをアンロードしないようです。しかし、アンロードイベントがトリガーされます、誰かアイデアはありますか?モジュールローダーからオブジェクトを削除する方法

4

1 に答える 1

0

モジュールがメモリに固定されたままになる理由はいくつか考えられます。できる最善の方法は、Alex Haruiによるこの優れたブログエントリを読むことです:http ://blogs.adobe.com/aharui/2009/08/what_we_know_about_unloading_m.html

新しいバグを見つけない限り、問題を解決するのに役立つはずです:)

お役に立てば幸い

于 2012-03-24T08:57:32.777 に答える