Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

jhat(1) [mojave man page]

jhat(1) 						      General Commands Manual							   jhat(1)

NAME
jhat - Java Heap Analysis Tool SYNOPSIS
jhat [ options ] <heap-dump-file> PARAMETERS
options Options, if used, should follow immediately after the command name. heap-dump-file Java binary heap dump file to be browsed. For a dump file that contains multiple heap dumps, you may specify which dump in the file by appending "#<number> to the file name, i.e. "foo.hprof#3". DESCRIPTION
The jhat command parses a java heap dump file and launches a webserver. jhat enables you to browse heap dumps using your favorite web- browser. jhat supports pre-designed queries (such as 'show all instances of a known class "Foo"') as well as OQL (Object Query Language) - a SQL-like query language to query heap dumps. Help on OQL is available from the OQL help page shown by jhat. With the default port, OQL help is available at http://localhost:7000/oqlhelp/ There are several ways to generate a java heap dump: * Use jmap -dump option to obtain a heap dump at runtime; * Use jconsole option to obtain a heap dump via HotSpotDiagnosticMXBean @ http://java.sun.com/javase/6/docs/jre/api/management/extension/com/sun/management/HotSpotDiagnosticsMXBean.html at runtime; * Heap dump will be generated when OutOfMemoryError is thrown by specifying -XX:+HeapDumpOnOutOfMemoryError VM option; * Use hprof @ http://java.sun.com/developer/technicalArticles/Programming/HPROF.html. NOTE: This tool is experimental and may not be available in future versions of the JDK. OPTIONS
-stack false/true Turn off tracking object allocation call stack. Note that if allocation site information is not available in the heap dump, you have to set this flag to false. Default is true. -refs false/true Turn off tracking of references to objects. Default is true. By default, back pointers (objects pointing to a given object a.k.a refer- rers or in-coming references) are calculated for all objects in the heap. -port port-number Set the port for the jhat's HTTP server. Default is 7000. -exclude exclude-file Specify a file that lists data members that should be excluded from the "reachable objects" query. For example, if the file lists java.lang.String.value, then, whenever list of objects reachable from a specific object "o" are calculated, reference paths involving java.lang.String.value field will not considered. -baseline baseline-dump-file Specify a baseline heap dump. Objects in both heap dumps with the same object ID will be marked as not being "new". Other objects will be marked as "new". This is useful while comparing two different heap dumps. -debug int Set debug level for this tool. 0 means no debug output. Set higher values for more verbose modes. -version Report version number and exit. -h Output help message and exit. -help Output help message and exit. -J<flag> Pass <flag> to the Java virtual machine on which jhat is run. For example, -J-Xmx512m to use a maximum heap size of 512MB. SEE ALSO
* jmap - Java Memory Map * jconsole - Java Monitoring and Management Console * hprof - Heap and CPU profiling tool @ http://java.sun.com/developer/technicalArticles/Programming/HPROF.html 05 Aug 2006 jhat(1)

Check Out this Related Man Page

Heap::Elem(3pm) 					User Contributed Perl Documentation					   Heap::Elem(3pm)

NAME
Heap::Elem - Base class for elements in a Heap SYNOPSIS
use Heap::Elem::SomeInheritor; use Heap::SomeHeapClass; $elem = Heap::Elem::SomeInheritor->new( $value ); $heap = Heap::SomeHeapClass->new; $heap->add($elem); DESCRIPTION
This is an inheritable class for Heap Elements. It provides the interface documentation and some inheritable methods. Only a child classes can be used - this class is not complete. METHODS
$elem = Heap::Elem::SomeInheritor->new( [args] ); Creates a new Elem. If there is exactly one arg, the Elem's value will be set to that value. If there is more than one arg provided, the Elem's value will be set to an anonymous hash initialized to the provided args (which must have an even number, of course). $elem->heap( $val ); $elem->heap; Provides a method for use by the Heap processing routines. If a value argument is provided, it will be saved. The new saved value is always returned. If no value argument is provided, the old saved value is returned. The Heap processing routines use this method to map an element into its internal structure. This is needed to support the Heap methods that affect elements that are not are the top of the heap - decrease_key and delete. The Heap processing routines will ensure that this value is undef when this elem is removed from a heap, and is not undef after it is inserted into a heap. This means that you can check whether an element is currently contained within a heap or not. (It cannot be used to determine which heap an element is contained in, if you have multiple heaps. Keeping that information accurate would make the operation of merging two heaps into a single one take longer - it would have to traverse all of the elements in the merged heap to update them; for Binomial and Fibonacci heaps that would turn an O(1) operation into an O(n) one.) $elem->val( $val ); $elem->val; Provides a method to get and/or set the value of the element. $elem1->cmp($elem2) A routine to compare two elements. It must return a negative value if this element should go higher on the heap than $elem2, 0 if they are equal, or a positive value if this element should go lower on the heap than $elem2. Just as with sort, the Perl operators <=> and cmp cause the smaller value to be returned first; similarly you can negate the meaning to reverse the order - causing the heap to always return the largest element instead of the smallest. INHERITING
This class can be inherited to provide an object with the ability to be heaped. If the object is implemented as a hash, and if it can deal with a key of heap, leaving it unchanged for use by the heap routines, then the following implemetation will work. package myObject; require Exporter; @ISA = qw(Heap::Elem); sub new { my $self = shift; my $class = ref($self) || $self; my $self = SUPER::new($class); # set $self->{key} = $value; } sub cmp { my $self = shift; my $other = shift; $self->{key} cmp $other->{key}; } # other methods for the rest of myObject's functionality AUTHOR
John Macdonald, john@perlwolf.com COPYRIGHT
Copyright 1998-2007, O'Reilly & Associates. This code is distributed under the same copyright terms as perl itself. SEE ALSO
Heap(3), Heap::Elem::Num(3), Heap::Elem::NumRev(3), Heap::Elem::Str(3), Heap::Elem::StrRev(3). perl v5.8.8 2007-10-23 Heap::Elem(3pm)
Man Page