Devel::Gladiator(3)

NAME
Devel::Gladiator - Walk Perl's arena

SYNOPSIS
  use Devel::Gladiator qw(walk_arena arena_ref_counts arena_table);

  my $all = walk_arena();

  foreach my $sv ( @$all ) {
      warn "live object: $sv\n";
  }

  warn arena_table(); # prints counts keyed by class

DESCRIPTION
Devel::Gladiator iterate's Perl's internal memory structures and can be used to enumerate all the currently live SVs.

This can be used to hunt leaks and to profile memory usage.

EXPORTS

walk_arena
    Returns an array reference containing all the live SVs. Note that this will include a reference back to itself, so you should manually clear this array (via "@$arena = ()") when you are done with it, if you don't want to create a memory leak.

arena_ref_counts
    Returns a hash keyed by class and reftype of all the live SVs.

    This is a convenient way to find out how many objects of a given class exist at a certain point.

arena_table
    Formats a string table based on "arena_ref_counts" suitable for printing.

COPYRIGHT AND LICENCE
Put the correct copyright and licence information here.

Copyright (C) 2006 by Artur Bergman

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.6 or, at your option, any later version of Perl 5 you may have available.