Ja pouzivam rovnez MAT. U bezici aplikace provest heap dump idealne pres
 jmap (pripadne nastavit jvm tak, aby vytvorila heapdump pokazde kdyz 
dojde pamet (-XX:+<div id=":45" class="ii gt">HeapDumpOnOutOfMemoryError 
-XX:HeapDumpPath=adresar) a potom analyzovat dump v MATu. <br>
<br>Muze se stat, ze heap se neda v MATu otevrit (server ma vice pameti 
nez vyvojarske PC), pak se da MAT pustit z konzole pres prikazovou radku
 a umi vygenerovat report do html.<br><br>Honza<br></div><br><br><div class="gmail_quote">2010/5/5 Ondra Medek <span dir="ltr">&lt;<a href="mailto:xmedeko@gmail.com">xmedeko@gmail.com</a>&gt;</span><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Ja mam tez dobre zkusenosti s Eclipse MAT (free): zjisti, objekty<br>
ktere tridy zabiraji nejvice, pak lze funkci &quot;find root to gc&quot; rychle<br>
najit zdroj leaku.<br>
<br>
2010/5/5 Michal Bocek &lt;<a href="mailto:michal.bocek@gmail.com">michal.bocek@gmail.com</a>&gt;:<br>
<div><div></div><div class="h5">&gt; Skuste jprofiler alebo yourkit a porovnat snapshoty. Pripadne nakonfigurovat<br>
&gt; jvm tak aby robil heapdump a ten nasledne analyzovat.<br>
&gt;<br>
&gt; Snad som pomohol,<br>
&gt; Michal.<br>
&gt;<br>
&gt; 2010/5/5 Lukáš Záruba &lt;<a href="mailto:lukas.zaruba@media-solutions.cz">lukas.zaruba@media-solutions.cz</a>&gt;<br>
&gt;&gt;<br>
&gt;&gt; Zkus jvisualvm aplikačku z JDK (je ve složce bin), tam jde udělat heap<br>
&gt;&gt; dump a pak se v něm kouknout kolik instancí čeho a v jakém stavu byly.<br>
&gt;&gt; Nejsem si jistý, jak se tohle liší od normálního profilingu z hlediska<br>
&gt;&gt; komunikace s JVM, nicméně už jsem pomocí toho odhalil dost problémů...<br>
&gt;&gt; Použití je poměrně jednoduché, taže myslím, že nepotřebuje další<br>
&gt;&gt; vysvětlení :)<br>
&gt;&gt;<br>
&gt;&gt; L.<br>
&gt;&gt;<br>
&gt;&gt; ______________________<br>
&gt;&gt; Lukáš Záruba (Lukas Zaruba)<br>
&gt;&gt; Chief Technical Officer<br>
&gt;&gt; MEDIA SOLUTIONS EUROPE<br>
&gt;&gt; Lisabonská 4<br>
&gt;&gt; Praha 9 190 00<br>
&gt;&gt; Czech Republic<br>
&gt;&gt; phone: +420 721 879 363<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; Tomas Hubalek wrote:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Zdar,<br>
&gt;&gt;&gt;  mam velice rozsahlou aplikaci v Jave a nekde se mi neuvolnuje pamet.<br>
&gt;&gt;&gt; Statickz analyza kodu by snad ani nebyla mozna v rozumnem case. Nasel jsem<br>
&gt;&gt;&gt; moc pekny tutorial <a href="http://www.javapassion.com/handsonlabs/nbprofilermemory/" target="_blank">http://www.javapassion.com/handsonlabs/nbprofilermemory/</a><br>
&gt;&gt;&gt; bohuzel mi vdycky JVM krachne na<br>
&gt;&gt;&gt;  WARNING: [AWT-EventQueue-1] Cant promote a shared lock held by 2<br>
&gt;&gt;&gt; threads!<br>
&gt;&gt;&gt; #<br>
&gt;&gt;&gt; # An unexpected error has been detected by Java Runtime Environment:<br>
&gt;&gt;&gt; #<br>
&gt;&gt;&gt; #  Internal Error (sharedRuntime.cpp:886), pid=4752, tid=5992<br>
&gt;&gt;&gt; #  Error: guarantee((retry_count++ &lt; 100),&quot;Could not resolve to latest<br>
&gt;&gt;&gt; version of redefined method&quot;)<br>
&gt;&gt;&gt; #<br>
&gt;&gt;&gt; # Java VM: Java HotSpot(TM) Client VM (11.0-b16 mixed mode, sharing<br>
&gt;&gt;&gt; windows-x86)<br>
&gt;&gt;&gt; # An error report file with more information is saved as:<br>
&gt;&gt;&gt; #<br>
&gt;&gt;&gt; D:\CurrentProjects\CADET2009\netbeans-modules-suite.2.1\application\target\cadet\hs_err_pid4752.log<br>
&gt;&gt;&gt; #<br>
&gt;&gt;&gt; # If you would like to submit a bug report, please visit:<br>
&gt;&gt;&gt; #   <a href="http://java.sun.com/webapps/bugreport/crash.jsp" target="_blank">http://java.sun.com/webapps/bugreport/crash.jsp</a><br>
&gt;&gt;&gt; #<br>
&gt;&gt;&gt;  Zkousel jsem to jak na Linuxu, tak na Windowsech, bohuzel porad stejne.<br>
&gt;&gt;&gt;  Netusite nekdo, jak to zjistit to same bez profileru? Command line mi<br>
&gt;&gt;&gt; nedela problem.<br>
&gt;&gt;&gt;  Tom<br>
&gt;<br>
&gt;<br>
<br>
<br>
<br>
</div></div>--<br>
<font color="#888888">Ondra Medek<br>
</font></blockquote></div><br>