0 Replies Latest reply on Mar 31, 2010 10:05 AM by Darrell Loverin

    [svn:fx-trunk] 15170: ModuleManager keeps weak references to modules

    Darrell Loverin Level 4

      Revision: 15170

      Revision: 15170

      Author:   dloverin@adobe.com

      Date:     2010-03-31 10:05:15 -0700 (Wed, 31 Mar 2010)

      Log Message:

      ***********

      ModuleManager keeps weak references to modules

       

      The ModuleManager now keeps weak references to modules. Modules do not need to be unloaded to be garbage collected, being removed from the display list is enough.

       

      I also removed the ?\226?\128?\156limbo?\226?\128?\157 variable since the module is already in a weak reference dictionary. This change introduces a small change in behavior that should not be problematic. After calling release() a module can appear as ?\226?\128?\156ready?\226?\128?\157 and ?\226?\128?\156loaded?\226?\128?\157 whereas before the module would not appear as ?\226?\128?\156ready?\226?\128?\157 or ?\226?\128?\156loaded?\226?\128?\157. This is because the module is still in memory with its old state. Calling load() on one of these modules results in all the module lifecycle events being dispatched, the only difference is the module did not need to be loaded. So I don?\226?\128?\153t think this change will cause any developers a problem.

       

      Developers who are expecting the ModuleManager to keep modules in memory for them without keeping a reference to IModuleInfo will see their modules get garbage collected.

       

      QE notes: None

      Doc notes: None

      Bugs: SDK-25906

      Reviewer: Alex

      Tests run: checkintests, Modules, PerModuleStyles

      Is noteworthy for integration: No

       

      Ticket Links:

      ***********

          http://bugs.adobe.com/jira/browse/SDK-25906

       

      Modified Paths:

      **************

          flex/sdk/trunk/frameworks/projects/framework/src/mx/modules/ModuleManager.as