#!/usr/bin/perl use strict; use warnings; use IPC::ShareLite; use Storable qw( freeze thaw ); # dosn't show segment size correctly without size set. my $share; eval { $share = IPC::ShareLite->new( -key => 4812, -create => 'yes', -destroy => 'no', -mode => 0600, -size => 5000 ); }; if ($@) { warn "Woops: $@"; exit; } # Let's use some memory my @array = (0 .. 1500000); $share->store( freeze( \@array ) ); my $size = $share->size; print "Size: $size\n"; my $num_segments = $share->num_segments; print "Segments: $num_segments\n"; my $usage = $share->size * $share->num_segments; print "Usage: $usage\n"; #### $ ./971163.pl Size: 5000 Segments: 207 Usage: 1035000