traceyfreitas has asked for the wisdom of the Perl Monks concerning the following question:
I have large datastructures (hashes of hashes of ...) containing data that have been computed over quite some time and I normally just use:
use Storable; ... store \%hash1, $filename;
and
my $href2 = retrieve $filename;to dump and reload from disk quickly, and between runs of the same program.
The problem is now that I'm using threads and threads::shared, my shared hashes do not store to disk. Actually they do, but they're basically empty. I've read posts similar to this issue, but not regarding the use of "store" itself.
Anyone know how to coax Storable to "store" a shared hash (of a hash of a hash...)? My current (inefficient) workaround is to create the HoHoH as a normal (unshared) variable, "store" it, then create a shared version of it, destroy the unshared version, and proceed with the shared version.
Thanks in advance!
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: unable to store shared hash with Storable
by ikegami (Patriarch) on Aug 10, 2011 at 18:31 UTC | |
by traceyfreitas (Sexton) on Aug 11, 2011 at 01:01 UTC | |
by ikegami (Patriarch) on Aug 11, 2011 at 02:12 UTC | |
by traceyfreitas (Sexton) on Aug 10, 2011 at 23:46 UTC | |
|
Re: unable to store shared hash with Storable
by zentara (Cardinal) on Aug 10, 2011 at 16:40 UTC | |
|
Re: unable to store shared hash with Storable
by BrowserUk (Patriarch) on Aug 11, 2011 at 04:59 UTC | |
by traceyfreitas (Sexton) on Aug 11, 2011 at 18:48 UTC |