PessoALL,

Devido a grande discussão sobre "Memory Lakes" resolvi fazer alguns simples 
testes com base no entendimento do funcionamento de memoria no Flex, como segue:

1-Criei uma nova aplicação
2-Criei um container (TitleWindow)
3-Dentro do meu application logo após a declaração dos namespaces, criei uma 
variável (var ModuleManager: ModuleLoader = new ModuleLoader();) 
4-Criei 2 módulos para teste
5-Criei 2 botões, um para carregar e o outro para descarregar o módulo
6-Método para carregar o módulo:
    public function Carregar():void{
        if (!Loaded){
            MyTitleWindow.addChild(ModuleManager);
            ModuleManager.url = 'Teste.swf';
            ModuleManager.loadModule();
            Loaded = true;
        }
     }

7-Método para descarregar o módulo
          public function Descarrega():void{
          ModuleManager.unloadModule();
          MyTitleWindow.removeChild(ModuleManager);
          Loaded = false;
          } 

Desta forma, tratando o ModuleLoader como child do container, o resultado foi:
Após carregar e descarregar alguns módulos cerca de 200 vezes, acompanhei o 
desempenho de memória tanto no System.totalMemory como no gerenciador de 
tarefas Windows e o percentual de lake de memória foi de 3% referente ao estado 
inicial.

Vale lembrar que nestes testes usei módulos com alguns componentes, não criei 
eventos, etc....foi um teste razoavelmente simples porém já me definiu um norte 
a seguir.
Também ressalto aqui a importância do que foi dito quanto o uso de módulos no 
Flex.

Para mim, esse teste já valeu para o meu projeto. Espero que ajude outros 
também....!

Rodolpho da Silva
www.essencialcode.com.br








-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
Para sair da lista, envie um email em branco para 
flexdev-unsubscr...@googlegroups.com
Mais opções estão disponíveis em http://groups.google.com/group/flexdev

Responder a