-
01.05.12 16:11 #16Hallo,
Tool HeapSummary: gibt eine kompakte Darstellung einiger Heap-Kennzahlen aus.
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
C:\Users\tom>"%JAVA_HOME%\bin\java" -cp "%JAVA_HOME%\lib\sa-jdi.jar" sun.jvm.hotspot.tools.HeapSummary 2996 Attaching to process ID 2996, please wait... Debugger attached successfully. Server compiler detected. JVM version is 23.0-b21 using thread-local object allocation. Parallel GC with 8 thread(s) Heap Configuration: MinHeapFreeRatio = 40 MaxHeapFreeRatio = 70 MaxHeapSize = 268435456 (256.0MB) NewSize = 1310720 (1.25MB) MaxNewSize = 17592186044415 MB OldSize = 5439488 (5.1875MB) NewRatio = 2 SurvivorRatio = 8 PermSize = 21757952 (20.75MB) MaxPermSize = 85983232 (82.0MB) G1HeapRegionSize = 0 (0.0MB) Heap Usage: PS Young Generation Eden Space: capacity = 62455808 (59.5625MB) used = 52892936 (50.44263458251953MB) free = 9562872 (9.119865417480469MB) 84.68857852259313% used From Space: capacity = 6881280 (6.5625MB) used = 6301408 (6.009490966796875MB) free = 579872 (0.553009033203125MB) 91.57319568452381% used To Space: capacity = 9633792 (9.1875MB) used = 0 (0.0MB) free = 9633792 (9.1875MB) 0.0% used PS Old Generation capacity = 29229056 (27.875MB) used = 15248400 (14.542007446289062MB) free = 13980656 (13.332992553710938MB) 52.16863657861547% used PS Perm Generation capacity = 72613888 (69.25MB) used = 39511984 (37.68156433105469MB) free = 33101904 (31.568435668945312MB) 54.41381130838222% used 16706 interned Strings occupying 1695152 bytes.
Gruß TomJava rocks! http://www.jugsaar.de
How to become a good Java Programmer?
Does IT in Java and .Net
The only valid measurement of code quality: WTFs / minute
Blog
Xing
Twitter
-
01.05.12 16:13 #17
Hallo,
Tool HeapDumper: Erlaubt das erzeugen von Heap Dumps zur späteren analyse (Beispielsweise in JVisualVM)
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
C:\Users\tom>"%JAVA_HOME%\bin\java" -cp "%JAVA_HOME%\lib\sa-jdi.jar" sun.jvm.hotspot.tools.HeapDumper 2996 Attaching to process ID 2996, please wait... Debugger attached successfully. Server compiler detected. JVM version is 23.0-b21 Dumping heap to heap.bin ... none null_check null_assert range_check class_check array_check intrinsic bimorphic unloaded uninitialized unreached unhandled constraint div0_check age predicate loop_limit_check Finding object size using Printezis bits and skipping over... Finding object size using Printezis bits and skipping over... Finding object size using Printezis bits and skipping over... Finding object size using Printezis bits and skipping over... Finding object size using Printezis bits and skipping over... Heap dump file created
Gruß TomJava rocks! http://www.jugsaar.de
How to become a good Java Programmer?
Does IT in Java and .Net
The only valid measurement of code quality: WTFs / minute
Blog
Xing
Twitter
-
01.05.12 16:15 #18
Hallo,
Tool FlagDumper: gibt alle JVM-Flags mit ihren aktuellen Werten aus.
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
C:\Users\tom>"%JAVA_HOME%\bin\java" -cp "%JAVA_HOME%\lib\sa-jdi.jar" sun.jvm.hotspot.tools.FlagDumper 1104 Attaching to process ID 1104, please wait... Debugger attached successfully. Server compiler detected. JVM version is 23.0-b21 AdaptivePermSizeWeight = 20 AdaptiveSizeDecrementScaleFactor = 4 AdaptiveSizeMajorGCDecayTimeScale = 10 AdaptiveSizePausePolicy = 0 AdaptiveSizePolicyCollectionCostMargin = 50 AdaptiveSizePolicyInitializingSteps = 20 AdaptiveSizePolicyOutputInterval = 0 AdaptiveSizePolicyWeight = 10 AdaptiveSizeThroughPutPolicy = 0 AdaptiveTimeWeight = 25 AdjustConcurrency = false AggressiveOpts = false AliasLevel = 3 AllocateInstancePrefetchLines = 1 AllocatePrefetchDistance = 192 AllocatePrefetchInstr = 0 AllocatePrefetchLines = 4 AllocatePrefetchStepSize = 64 AllocatePrefetchStyle = 1 AllowInvokeGeneric = false AllowJNIEnvProxy = false AllowParallelDefineClass = false AllowUserSignalHandlers = false AlwaysActAsServerClassMachine = false AlwaysCompileLoopMethods = false AlwaysInflate = 0 AlwaysLockClassLoader = false AlwaysPreTouch = false AlwaysRestoreFPU = false AlwaysTenure = false AnonymousClasses = false ArraycopyDstPrefetchDistance = 0 ...
Gruß TomJava rocks! http://www.jugsaar.de
How to become a good Java Programmer?
Does IT in Java and .Net
The only valid measurement of code quality: WTFs / minute
Blog
Xing
Twitter
-
01.05.12 16:17 #19
Hallo,
Tool FinalizerInfo: Gibt Informationen zu den aktuell in die finalizer Queue eingestellten Objekten aus:
Code :1 2 3 4 5 6
C:\Users\tom>"%JAVA_HOME%\bin\java" -cp "%JAVA_HOME%\lib\sa-jdi.jar" sun.jvm.hotspot.tools.FinalizerInfo 1104 Attaching to process ID 1104, please wait... Debugger attached successfully. Server compiler detected. JVM version is 23.0-b21 Number of objects pending for finalization: 0
Gruß TomJava rocks! http://www.jugsaar.de
How to become a good Java Programmer?
Does IT in Java and .Net
The only valid measurement of code quality: WTFs / minute
Blog
Xing
Twitter
-
01.05.12 16:20 #20
Hallo,
Tool SOQL: SOQL (Simple Object Query Language) Client zum analysieren von Heap Strukturen, leider gibt es dazu (stand heute) noch nicht so viele Beispiele. Man kann sich aber grob an OQL orientieren:http://visualvm.java.net/oqlhelp.html)
Unterstützte Kommandos: select, classes, class, object, quit
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
C:\Users\tom>"%JAVA_HOME%\bin\java" -cp "%JAVA_HOME%\lib\sa-jdi.jar" sun.jvm.hotspot.tools.soql.SOQL 1104 Attaching to process ID 1104, please wait... Debugger attached successfully. Server compiler detected. JVM version is 23.0-b21 soql> classes $Proxy1 @0x00000000ebaae9c8 $Proxy2 @0x00000000ebbb8ff8 $Proxy3 @0x00000000ebc284c0 $Proxy4 @0x00000000ebc3fc68 $Proxy5 @0x00000000ec305ad8 $Proxy6 @0x00000000ec311fd8 com.sun.beans.WeakCache @0x00000000eb56d818 com.sun.beans.finder.BeanInfoFinder @0x00000000eb576958 com.sun.beans.finder.InstanceFinder @0x00000000eb5766d8 com.sun.beans.finder.PropertyEditorFinder @0x00000000ec1da2e0 com.sun.imageio.plugins.bmp.BMPImageReaderSpi @0x00000000eb664530 com.sun.imageio.plugins.bmp.BMPImageWriterSpi @0x00000000eb6653e0 com.sun.imageio.plugins.common.InputStreamAdapter @0x00000000eb6ad690 com.sun.imageio.plugins.common.ReaderUtil @0x00000000eb6ca060 com.sun.imageio.plugins.common.SubImageInputStream @0x00000000eb6aca98 com.sun.imageio.plugins.gif.GIFImageMetadata @0x00000000ebd78f98 com.sun.imageio.plugins.gif.GIFImageReader @0x00000000ebd70a88 com.sun.imageio.plugins.gif.GIFImageReaderSpi @0x00000000eb65c538 com.sun.imageio.plugins.gif.GIFImageWriterSpi @0x00000000eb661940 com.sun.imageio.plugins.gif.GIFMetadata @0x00000000ebd75cf0 com.sun.imageio.plugins.gif.GIFStreamMetadata @0x00000000ebd76020 com.sun.imageio.plugins.jpeg.JPEG @0x00000000eb66b828 com.sun.imageio.plugins.jpeg.JPEGImageReaderSpi @0x00000000eb669bc0 com.sun.imageio.plugins.jpeg.JPEGImageWriterSpi @0x00000000eb66c670 com.sun.imageio.plugins.png.PNGImageDataEnumeration @0x00000000eb6aadf0 com.sun.imageio.plugins.png.PNGImageReader @0x00000000eb68c530 com.sun.imageio.plugins.png.PNGImageReaderSpi @0x00000000eb668040 com.sun.imageio.plugins.png.PNGImageWriterSpi @0x00000000eb668ea8 com.sun.imageio.plugins.png.PNGMetadata @0x00000000eb699980 com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi @0x00000000eb6663e0 com.sun.imageio.plugins.wbmp.WBMPImageWriterSpi @0x00000000eb667280 ...
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
C:\Users\tom>"%JAVA_HOME%\bin\java" -cp "%JAVA_HOME%\lib\sa-jdi.jar" sun.jvm.hotspot.tools.soql.SOQL 1104 Attaching to process ID 1104, please wait... Debugger attached successfully. Server compiler detected. JVM version is 23.0-b21 soql> class usage: class <name of the class> soql> class java.lang.String super java.lang.Object fields char[] value int offset int count int hash long serialVersionUID java.io.ObjectStreamField[] serialPersistentFields java.util.Comparator CASE_INSENSITIVE_ORDER ...
Es gibt wohl davon auch noch eine Variante mit JavaScript Interpreter:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
C:\Users\tom>"%JAVA_HOME%\bin\java" -cp "%JAVA_HOME%\lib\sa-jdi.jar" sun.jvm.hotspot.tools.soql.JSDB 1104 Attaching to process ID 1104, please wait... Debugger attached successfully. Server compiler detected. JVM version is 23.0-b21 jsdb> object sun.org.mozilla.javascript.internal.InterpretedFunction@4c5f3bf7 jsdb> object(0x0000000) java.lang.Object@7049cca1 jsdb> object(0x0000000).hashCode() 1883884705 jsdb> object() call to object failed! javax.script.ScriptException: JavaException: javax.script.ScriptException: java.lang.reflect.InvocationTarget jsdb> object(0) java.lang.Object@7049cca1 jsdb>
Gruß TomJava rocks! http://www.jugsaar.de
How to become a good Java Programmer?
Does IT in Java and .Net
The only valid measurement of code quality: WTFs / minute
Blog
Xing
Twitter
-
01.05.12 16:31 #21
Hallo,
Tool ClassDump: Mit diesem Tool kann man wohl dynamisch erstellte Class-Definitionen die nur In-Memory vorliegen (z.Bsp. DynamicProxy Klassen) auf die Platte schreiben lassen:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
C:\Users\tom>"%JAVA_HOME%\bin\java" -cp "%JAVA_HOME%\lib\sa-jdi.jar" sun.jvm.hotspot.tools.jcore.ClassDump 1104 Attaching to process ID 1104, please wait... Debugger attached successfully. Server compiler detected. JVM version is 23.0-b21 C:\Users\tom>dir *.class Datenträger in Laufwerk C: ist System Volumeseriennummer: 22AD-4CCA Verzeichnis von C:\Users\tom 01.05.2012 16:29 2.954 $Proxy1.class 01.05.2012 16:29 1.951 $Proxy2.class 01.05.2012 16:29 1.970 $Proxy3.class 01.05.2012 16:29 15.343 $Proxy4.class 01.05.2012 16:29 2.018 $Proxy5.class 01.05.2012 16:29 2.813 $Proxy6.class 6 Datei(en), 27.049 Bytes 0 Verzeichnis(se), 79.729.037.312 Bytes frei
Gruß TomJava rocks! http://www.jugsaar.de
How to become a good Java Programmer?
Does IT in Java and .Net
The only valid measurement of code quality: WTFs / minute
Blog
Xing
Twitter
-
02.05.12 19:26 #22
Mitglied Smaragd
- Registriert seit
- Jun 2009
- Beiträge
- 1.020
Gibts dazu auch ne Übersicht des Herstellers
?
Code bitte so einfügen: [java]System.out.println("Hallo");[/java] (Analog für andere Programmiersprachen)
hilfreich zu Java: Really Big Index, Java ist auch eine Insel Band 1 und Band 2.Code java:1
System.out.println("Hallo");
-
02.05.12 20:09 #23
Hallo,
ich konnte bisher leider noch keine Anleitung dazu finden ...
Gruß TomJava rocks! http://www.jugsaar.de
How to become a good Java Programmer?
Does IT in Java and .Net
The only valid measurement of code quality: WTFs / minute
Blog
Xing
Twitter
-
07.01.13 11:23 #24
Hallo,
dazu gibt es mittlerweile auch ein nettes VisualVM Plugin:
http://visualvm.java.net/saplugin.html
Gruß TomJava rocks! http://www.jugsaar.de
How to become a good Java Programmer?
Does IT in Java and .Net
The only valid measurement of code quality: WTFs / minute
Blog
Xing
Twitter
Ähnliche Themen
-
interne IP adresse von host auslesen (ohne socket)
Von zoidberger im Forum C/C++Antworten: 5Letzter Beitrag: 06.09.11, 16:40 -
JVisualVM Plugin Tracer - Interne Performance Counters auslesen
Von Thomas Darimont im Forum JavaAntworten: 1Letzter Beitrag: 22.02.11, 10:50 -
Interne Php-Datei auslesen
Von Vousak im Forum PHPAntworten: 4Letzter Beitrag: 23.01.11, 18:57 -
HotSpot java-web-start
Von eagle im Forum JavaAntworten: 1Letzter Beitrag: 26.09.05, 12:36 -
VBA Excel - Interne Tabellennamen auslesen
Von LunaSun im Forum Visual Basic 6.0Antworten: 2Letzter Beitrag: 20.02.04, 09:48


2Danke


Zitieren
Login