GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Devel::MAT::Dumpfile(3) User Contributed Perl Documentation Devel::MAT::Dumpfile(3)

"Devel::MAT::Dumpfile" - load and analyse a heap dump file

 use Devel::MAT::Dumpfile;

 my $df = Devel::MAT::Dumpfile->load( "path/to/the/file.pmat" );

 TODO

This module provides a class that loads a heap dump file previously written by Devel::MAT::Dumper. It provides accessor methods to obtain various well-known root starting addresses, or to find arbitrary SVs by address. Each SV is represented by an instance of Devel::MAT::SV.

   $df = Devel::MAT::Dumpfile->load( $path, %args )

Loads a heap dump file from the given path, and returns a new "Devel::MAT::Dumpfile" instance representing it.

Takes the following named arguments:

progress => CODE
If given, should be a CODE reference to a function that will be called regularly during the loading process, and given a status message to update the user.

   $version = $df->perlversion

Returns the version of perl that the heap dump file was created by, as a string in the form 5.14.2.

   $endian = $df->endian

Returns the endian direction of the perl that the heap dump was created by, as either "big" or "little".

   $len = $df->uint_len

Returns the length in bytes of a uint field of the perl that the heap dump was created by.

   $len = $df->ptr_len

Returns the length in bytes of a pointer field of the perl that the heap dump was created by.

   $len = $df->nv_len

Returns the length in bytes of a double field of the perl that the heap dump was created by.

   $ithreads = $df->ithreads

Returns a boolean indicating whether ithread support was enabled in the perl that the heap dump was created by.

   %roots = $df->roots

Returns a key/value pair list giving the names and SVs at each of the roots.

   %roots = $df->roots_strong

Returns a key/value pair list giving the names and SVs at each of the roots that count as strong references.

   %roots = $df->roots_weak

Returns a key/value pair list giving the names and SVs at each of the roots that count as strong references.

   $sv = $df->ROOT

For each of the root names given below, a method exists with that name which returns the SV at that root:

   main_cv
   defstash
   mainstack
   beginav
   checkav
   unitcheckav
   initav
   endav
   strtabhv
   envgv
   incgv
   statgv
   statname
   tmpsv
   defgv
   argvgv
   argvoutgv
   argvout_stack
   fdpidav
   preambleav
   modglobalhv
   regex_padav
   sortstash
   firstgv
   secondgv
   debstash
   stashcache
   isarev
   registered_mros

   %rootdescs = $df->root_descriptions

Returns a key/value pair list giving the (method) name and description text of each of the possible roots.

   @svs = $df->heap

Returns all of the heap-allocated SVs, in no particular order

   @svs = $df->stack

Returns all the SVs on the stack

   @ctxs = $df->contexts

Returns a list of Devel::MAT::Context objects representing the call context stack in the dumpfile.

   $sv = $df->sv_at( $addr )

Returns the SV at the given address, or "undef" if one does not exist.

(Note that this is unambiguous, as a Perl-level "undef" is represented by the immortal "Devel::MAT::SV::UNDEF" SV).

Paul Evans <leonerd@leonerd.org.uk>
2022-04-08 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.