Hi All, I have designed a script to extract the XML data using XML::DOM::Lite. I have parsed the xml file using the below method
my $parser = XML::DOM::Lite::Parser->new(); my $doc = $parser->parseFile("$file_name");
Then I tried to parse more files, say 30, size of each file is around 5MB and I got "Out of memory" issue.
I understood that I need to dispose the garbage value stored in the memory and I have created a seperate subroutine called dispose() which is just a replica of decycle() method available in Lite, but it is not working as expected. The sub is given below.
sub dispose { my ($self) = @_; foreach (@{$self->childNodes}) { undef $_->{parentNode}; undef $_->{ownerDocument}; if (defined $_->{childNodes}) { $_->decycle(); } } }
I'm calling the method as
$doc->dispose;Can any one help me on this.
In reply to How to perform dispose using XML::DOM::Lite by kbraj
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |