Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer
 
PerlMonks  

Re^3: Shared hash within shared hash of hash???

by BrowserUk (Pope)
on Jan 02, 2013 at 15:53 UTC ( #1011297=note: print w/ replies, xml ) Need Help??


in reply to Re^2: Shared hash within shared hash of hash???
in thread Shared hash within shared hash of hash???

1. Do i need to use lock $hash{foo} ; or lock ( \%hash ) ; if foo is used as shared_clone ?

It depends upon what you intend to modify.

When you have nested hashes so:

%hash :shared = &share( {} );
  1. To add a new key/value pair; or delete a key/value pair; or modify the value associated with an existing key in %hash you need:
    lock %hash; $hash{ existingkey } = newvalue; # or $hash{ newkey } = newvalue; #or delete $hash{ existingkey };
  2. To modify the nested anonymous hash associated with the key 'foo', you need:
    lock %{ $hash{ foo } }; $hash{foo}{somekey} = somevalue; # or delete $hash{ foo }{ somekey };

    Ie. lock %{ $h{1} } says lock the hash referenced by the value at $h{1}.


With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.


Comment on Re^3: Shared hash within shared hash of hash???
Select or Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1011297]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (9)
As of 2014-12-26 20:16 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Is guessing a good strategy for surviving in the IT business?





    Results (175 votes), past polls