📄 readme.html
字号:
{mso-level-tab-stop:2.5in;
mso-level-number-position:left;
text-indent:-.25in;}
@list l2:level6
{mso-level-tab-stop:3.0in;
mso-level-number-position:left;
text-indent:-.25in;}
@list l2:level7
{mso-level-tab-stop:3.5in;
mso-level-number-position:left;
text-indent:-.25in;}
@list l2:level8
{mso-level-tab-stop:4.0in;
mso-level-number-position:left;
text-indent:-.25in;}
@list l2:level9
{mso-level-tab-stop:4.5in;
mso-level-number-position:left;
text-indent:-.25in;}
@list l3
{mso-list-id:1357849694;
mso-list-type:hybrid;
mso-list-template-ids:-1596158836 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l3:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Symbol;}
@list l3:level2
{mso-level-tab-stop:1.0in;
mso-level-number-position:left;
text-indent:-.25in;}
@list l3:level3
{mso-level-tab-stop:1.5in;
mso-level-number-position:left;
text-indent:-.25in;}
@list l3:level4
{mso-level-tab-stop:2.0in;
mso-level-number-position:left;
text-indent:-.25in;}
@list l3:level5
{mso-level-tab-stop:2.5in;
mso-level-number-position:left;
text-indent:-.25in;}
@list l3:level6
{mso-level-tab-stop:3.0in;
mso-level-number-position:left;
text-indent:-.25in;}
@list l3:level7
{mso-level-tab-stop:3.5in;
mso-level-number-position:left;
text-indent:-.25in;}
@list l3:level8
{mso-level-tab-stop:4.0in;
mso-level-number-position:left;
text-indent:-.25in;}
@list l3:level9
{mso-level-tab-stop:4.5in;
mso-level-number-position:left;
text-indent:-.25in;}
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
-->
</style>
<!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Table Normal";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-parent:"";
mso-padding-alt:0in 5.4pt 0in 5.4pt;
mso-para-margin:0in;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman";}
</style>
<![endif]--><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="32770">
<o:colormenu v:ext="edit" fillcolor="blue"/>
</o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1"/>
</o:shapelayout></xml><![endif]-->
</head>
<body bgcolor=white lang=EN-US link=blue vlink="#000077" style='tab-interval:
.5in' alink="#FF0000">
<div class=Section1>
<p class=MsoNormal align=center style='text-align:center'><b><span
style='font-size:18.0pt'>IBM <span class=SpellE>HeapAnalyzer</span> Version
1.3.5</span></b><span style='font-size:18.0pt'> <o:p></o:p></span></p>
<p class=MsoNormal align=center style='text-align:center'><span
style='font-size:18.0pt'><o:p> </o:p></span></p>
<p class=MsoNormal align=center style='text-align:center'><span
style='font-size:18.0pt'><o:p> </o:p></span></p>
<p class=MsoNormal align=center style='text-align:center'><span class=SpellE><span
style='font-size:18.0pt'>HeapAnalyzer</span></span><span style='font-size:18.0pt'>
Architect/Developer<o:p></o:p></span></p>
<p class=MsoNormal align=center style='text-align:center'><span class=SpellE><span
style='font-size:18.0pt'>Jinwoo</span></span><span style='font-size:18.0pt'>
Hwang<o:p></o:p></span></p>
<p align=center style='margin:0in;margin-bottom:.0001pt;text-align:center'>jinwoo@us.ibm.com</p>
<p style='margin:0in;margin-bottom:.0001pt'><o:p> </o:p></p>
<p style='margin:0in;margin-bottom:.0001pt'>Welcome to IBM <span class=SpellE>HeapAnalyzer</span>.
IBM <span class=SpellE>HeapAnalyzer</span> allows the finding of a possible
Java heap leak area through its heuristic search engine and analysis of the Java
heap dump in Java applications. You can find more information at
http://www.alphaworks.ibm.com/tech/heapanalyzer</p>
<p style='margin:0in;margin-bottom:.0001pt'><o:p> </o:p></p>
<p style='margin:0in;margin-bottom:.0001pt'><b style='mso-bidi-font-weight:
normal'><span style='font-size:20.0pt'>Introduction<o:p></o:p></span></b></p>
<p>The Heapdump contains a list of all the objects that are in the heap.</p>
<p><span class=SpellE>Heapdumps</span> can be very large with millions of items
in them. </p>
<p>It's not always easy to analyze a large file. This tool analyzes <span
class=SpellE>heapdumps</span> of Java SDK 1.3.1 and 1.4.x.</p>
<p>HeapAnalyzer is provided “as-is”.</p>
<p><o:p> </o:p></p>
<p style='margin:0in;margin-bottom:.0001pt'><b style='mso-bidi-font-weight:
normal'><span style='font-size:20.0pt'>Prerequisite<o:p></o:p></span></b></p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l0 level1 lfo2;
tab-stops:list .5in'><![if !supportLists]><span style='font-family:Symbol;
mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol'><span
style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>
</span></span></span><![endif]>Java 2 Runtime Environment 1.4.1 or higher<br>
<br>
The following exception will be thrown if older versions SDK is used:<br>
Exception in thread "main" <span class=SpellE>java.lang.NoClassDefFoundError</span>:
java/<span class=SpellE>util/regex/PatternSyntaxException</span></p>
<p><o:p> </o:p></p>
<p><b style='mso-bidi-font-weight:normal'><span style='font-size:20.0pt'>Definitions<o:p></o:p></span></b></p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l2 level1 lfo4;
tab-stops:list .5in'><![if !supportLists]><span style='font-family:Symbol;
mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol'><span
style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>
</span></span></span><![endif]><b style='mso-bidi-font-weight:normal'>Root
object</b> An object for which no (different) object holds a reference.<br
style='mso-special-character:line-break'>
<![if !supportLineBreakNewLine]><br style='mso-special-character:line-break'>
<![endif]></p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l2 level1 lfo4;
tab-stops:list .5in'><![if !supportLists]><span style='font-family:Symbol;
mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol'><span
style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>
</span></span></span><![endif]><b style='mso-bidi-font-weight:normal'>Parent
object</b> An object (for example, A) that holds at least one reference to <span
class=GramE>some</span><br>
(different) object (for example, B). In this case, A is said to be the parent
of B.<br style='mso-special-character:line-break'>
<![if !supportLineBreakNewLine]><br style='mso-special-character:line-break'>
<![endif]></p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l2 level1 lfo4;
tab-stops:list .5in'><![if !supportLists]><span style='font-family:Symbol;
mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol'><span
style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>
</span></span></span><![endif]><span class=GramE><b style='mso-bidi-font-weight:
normal'>Owner object</b></span> If an object has more than one parent object, a
parent object is chosen as owner object. <br>
Total size is calculated only with owner objects.<br style='mso-special-character:
line-break'>
<![if !supportLineBreakNewLine]><br style='mso-special-character:line-break'>
<![endif]></p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l2 level1 lfo4;
tab-stops:list .5in'><![if !supportLists]><span style='font-family:Symbol;
mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol'><span
style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>
</span></span></span><![endif]><b style='mso-bidi-font-weight:normal'>Child
object</b> An object (for example, B) for which at least one (different) <span
class=GramE>object</span><br>
(for example, A) holds a reference. In this case B is said to be the child of
A. <br style='mso-special-character:line-break'>
<![if !supportLineBreakNewLine]><br style='mso-special-character:line-break'>
<![endif]></p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l2 level1 lfo4;
tab-stops:list .5in'><![if !supportLists]><span style='font-family:Symbol;
mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol'><span
style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>
</span></span></span><![endif]><b style='mso-bidi-font-weight:normal'>Type </b>Collection
of same objects<br style='mso-special-character:line-break'>
<![if !supportLineBreakNewLine]><br style='mso-special-character:line-break'>
<![endif]></p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l2 level1 lfo4;
tab-stops:list .5in'><![if !supportLists]><span style='font-family:Symbol;
mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol'><span
style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>
</span></span></span><![endif]><b style='mso-bidi-font-weight:normal'>Size</b>
The size of an object is the amount of memory that is required to hold that
object in memory.<br style='mso-special-character:line-break'>
<![if !supportLineBreakNewLine]><br style='mso-special-character:line-break'>
<![endif]></p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l2 level1 lfo4;
tab-stops:list .5in'><![if !supportLists]><span style='font-family:Symbol;
mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol'><span
style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>
</span></span></span><![endif]><b style='mso-bidi-font-weight:normal'>Total
size </b>The subtree size of an object is the sum of its size and the sizes of<br>
all the objects that it reached from its children. Note that each<br>
object is assigned a unique parent and root during processing. <br>
If there’s substantial difference in total size between <br>
a parent and its child, it’s called a total size drop. </p>
<p><o:p> </o:p></p>
<p><b style='mso-bidi-font-weight:normal'><span style='font-size:20.0pt'>Features<o:p></o:p></span></b></p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l3 level1 lfo6;
tab-stops:list .5in'><![if !supportLists]><span style='font-family:Symbol;
mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol'><span
style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>
</span></span></span><![endif]>NEW : Supports IBM portable heap dump .<span
class=SpellE>phd</span> format as well as IBM heap dump .txt and .txt.gz</p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l3 level1 lfo6;
tab-stops:list .5in'><![if !supportLists]><span style='font-family:Symbol;
mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol'><span
style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>
</span></span></span><![endif]>NEW: Automatically detects file format</p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l3 level1 lfo6;
tab-stops:list .5in'><![if !supportLists]><span style='font-family:Symbol;
mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol'><span
style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>
</span></span></span><![endif]>NEW: Supports Console window</p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l3 level1 lfo6;
tab-stops:list .5in'><![if !supportLists]><span style='font-family:Symbol;
mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol'><span
style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>
</span></span></span><![endif]>Creates a tree from heapdump</p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l3 level1 lfo6;
tab-stops:list .5in'><![if !supportLists]><span style='font-family:Symbol;
mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol'><span
style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>
</span></span></span><![endif]>Calculates size of each objects</p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l3 level1 lfo6;
tab-stops:list .5in'><![if !supportLists]><span style='font-family:Symbol;
mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol'><span
style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>
</span></span></span><![endif]>Calculates total size of each subtree</p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l3 level1 lfo6;
tab-stops:list .5in'><![if !supportLists]><span style='font-family:Symbol;
mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol'><span
style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>
</span></span></span><![endif]>Finds total size drop in a subtree</p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l3 level1 lfo6;
tab-stops:list .5in'><![if !supportLists]><span style='font-family:Symbol;
mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol'><span
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -