[Cascavel-pm] Liberar Memoria

Alceu R. de Freitas Jr. glasswalk3r em yahoo.com.br
Sexta Maio 12 14:52:07 PDT 2006


Joenio,

Uma vez que o Perl pegue memória do sistema, ele não
consegue devolver isso para o SO: o melhor que pode
fazer é usar essa memória para ele mesmo.

Acho que a forma mais simples de resolver seu problema
é processar o XML em um script separado, rodando ele
primeiro. Quando o processo acabar, seu parser XML
começa a trabalhar.

[]'s
Alceu


--- Joenio Marques <joenio em gmail.com> escreveu:

> Olá Monges,
> 
> Meu programa aqui está com um comportamento
> indesejado, não chega a
> ser um problema ainda, mas quero evitar que se
> torne.
> 
> Existe um XML disponibilizado por terceiros que eu
> preciso extrair os
> dados dele,  sendo XML prefiro utilizar parser ao
> invés de regex. O
> problema é que quem disponibiliza o XML não o está
> fazendo direito, o
> XML não é xml bem-formado de acordo com as
> recomendações. Então
> preciso fazer um pequeno armengue no arquivo xml
> para enquadra-lo aos
> padroes antes do parser.
> 
> Então o que eu faço é abrir o arquivo; copiar todo o
> conteudo para um
> escalar; aplicar uma regex para tornalo bem-formado;
> salvar. A partir
> daí eu posso e quero liberar a memoria utilizada
> nesse processo que me
> ocupa uns 50 megas (o xml tem 8 mb). Este processo é
> feito dentro de
> uma função, esperava que ao sair do escopo dela a
> memoria fosse
> liberada, mas não é.
> 
> Estou medindo o consumo através do htop, um top mais
> amigavel. E o
> ambiente é linux.
> 
> Já tentei fazer undef $content_file - escalar com
> conteudo do arquivo
> - e nao funcionou. Algém tem alguma dica?
> 
> Grato,
> -- 
> Joenio Marques
> - Salvador Perl Mongers
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
> 



		
_______________________________________________________ 
Novo Yahoo! Messenger com voz: Instale agora e faça ligações de graça. 
http://br.messenger.yahoo.com/


Mais detalhes sobre a lista de discussão Cascavel-pm