Beefy Boxes and Bandwidth Generously Provided by pair Networks DiBona
Syntactic Confectionery Delight
 
PerlMonks  

Re: How to save memory, parsing a big file.

by BrowserUk (Patriarch)
on Mar 01, 2006 at 11:20 UTC ( [id://533689]=note: print w/replies, xml ) Need Help??

This is an archived low-energy page for bots and other anonmyous visitors. Please sign up if you are a human and want to interact.


in reply to How to save memory, parsing a big file.

BTW. You should probably be using exists in your conditions to prevent autovivifying keys that you don't use:

if( exists $total{"$source$dport"}{'from'} ) {

Without the exists, you will autovivify a key ("$source$dport") in %total that will have an anonymous hash assigned to it.

print exists $h{a} ? 1 : 0;; 0 print $h{a}{b} ? 1 : 0;; 0 print exists $h{a} ? 1 : 0;; 1 print $h{a};; HASH(0x18eee74)

I don't think it will make much if any difference to your memory consumption in this case as you will go on to assign to the key anyway, but getting into the habit of using exists is a good thing in the long run as even empty anonymous hashes consume a fair amount of space.


Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
Lingua non convalesco, consenesco et abolesco. -- Rule 1 has a caveat! -- Who broke the cabal?
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://533689]
help
Sections?
Information?
Find Nodes?
Leftovers?
    Notices?
    hippoepoptai's answer Re: how do I set a cookie and redirect was blessed by hippo!
    erzuuliAnonymous Monks are no longer allowed to use Super Search, due to an excessive use of this resource by robots.