> file itm6_linux_server.memstore > itm6_linux_server.memstore: perl Storable (v0.7) data (major 2) (minor 9) # from print Dumper Storable::file_magic 'hdrsize' => 19, 'ptrsize' => 8, 'byteorder' => '12345678', 'intsize' => 4, 'file' => 'itm6_linux_server.memstore', 'longsize' => 8, 'netorder' => 0, 'minor' => 9, 'version_nv' => '2.009', 'major' => 2, 'nvsize' => 8, 'version' => '2.9' > ls -l itm6_linux_server.memstore -rw-rw-rw- 1 root root 2514 May 1 16:25 itm6_linux_server.memstore >perl -v This is perl 5, version 18, subversion 2 (v5.18.2) built for x86_64-linux-thread-multi #### sub getMem { my $self = shift; my $confID = shift; $confID = $self->{_itm6_lib_gen}->{_CONFID} unless defined $confID; my $mem = {}; # default to an empty one my $local_store = "local_$confID.memstore"; if (-e $local_store) { eval { $mem = lock_retrieve $local_store }; if ($@) { $self->{_logger}->trace( 1, "getMem: Reading store failed: $@"); print "getMem: Reading store failed: $@\n"; } } else { # print "$local_store not found\n"; } push @{ $self->{_file_to_write} }, [$mem, $local_store]; # note we need to write this return $mem; } # Saving is done in DESTROY sub DESTROY { my $self = shift; for (@{ $self->{_file_to_write} }) { my ($mem, $store) = @$_; lock_store ($mem, $store); } }