Elijah has asked for the wisdom of the Perl Monks concerning the following question:

I am trying to share a hash table across numerous threads. I am able to share the hash by a simple:

my %hash : shared;

But then I try to assign a value to it by:

{lock(%hash); $hash{$arg1}->{$arg2}->{$arg3}->{$arg4} = $arg5;}
The error I get is: Invalid value for shared scalar at

Is what I am trying to accomplish possible?