Galileo Computing < openbook > Galileo Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Vorwort
1 Java ist auch eine Sprache
2 Sprachbeschreibung
3 Klassen und Objekte
4 Der Umgang mit Zeichenketten
5 Mathematisches
6 Eigene Klassen schreiben
7 Angewandte Objektorientierung
8 Exceptions
9 Generics, innere Klassen
10 Die Klassenbibliothek
11 Threads und nebenläufige Programmierung
12 Datenstrukturen und Algorithmen
13 Raum und Zeit
14 Dateien und Datenströme
15 Die eXtensible Markup Language (XML)
16 Grafische Oberflächen mit Swing
17 Grafikprogrammierung
18 Netzwerkprogrammierung
19 Verteilte Programmierung mit RMI und Web–Services
20 JavaServer Pages und Servlets
21 Applets
22 Midlets und die Java ME
23 Datenbankmanagement mit JDBC
24 Reflection und Annotationen
25 Logging und Monitoring
26 Sicherheitskonzepte
27 Java Native Interface (JNI)
28 Dienstprogramme für die Java-Umgebung
Stichwort

Download:
- ZIP, ca. 14,1 MB
Buch bestellen
Ihre Meinung?

Spacer
<< zurück
Java ist auch eine Insel (8. Auflage) von Christian Ullenboom
Programmieren mit der Java Standard Edition Version 6
Buch: Java ist auch eine Insel (8. Auflage)

Java ist auch eine Insel (8. Aufl.)
8., aktual. Auflage, geb., mit DVD
1.475 S., 49,90 Euro
Galileo Computing
ISBN 978-3-8362-1371-4
Pfeil 28 Dienstprogramme für die Java-Umgebung
Pfeil 28.1 Die Werkzeuge im Überblick
Pfeil 28.2 Java-Compiler
Pfeil 28.2.1 Bytecode-Compiler javac
Pfeil 28.2.2 Native Compiler
Pfeil 28.2.3 Java-Programme in ein natives ausführbares Programm einpacken
Pfeil 28.3 Der Java-Interpreter java
Pfeil 28.3.1 Der Unterschied zwischen java.exe und javaw.exe
Pfeil 28.4 Das Archivformat Jar
Pfeil 28.4.1 Das Dienstprogramm Jar benutzen
Pfeil 28.4.2 Das Manifest
Pfeil 28.4.3 Applikationen in Jar-Archiven starten
Pfeil 28.4.4 Applets in Jar-Archiven
Pfeil 28.5 Monitoringprogramme
Pfeil 28.5.1 jps
Pfeil 28.5.2 jstat
Pfeil 28.5.3 jmap
Pfeil 28.5.4 jstack
Pfeil 28.6 Ant
Pfeil 28.6.1 Bezug und Installation von Ant
Pfeil 28.6.2 Properties
Pfeil 28.6.3 Externe und vordefinierte Properties
Pfeil 28.6.4 Weitere Ant-Tasks
Pfeil 28.6.5 Das Obfuscator-Programm ProGuard
Pfeil 28.7 Weitere Dienstprogramme
Pfeil 28.7.1 Sourcecode Beautifier
Pfeil 28.7.2 Java-Programme als Systemdienst ausführen
Pfeil 28.8 Zum Weiterlesen


Galileo Computing - Zum Seitenanfang

28.5 Monitoringprogramme Zur nächsten ÜberschriftZur vorigen Überschrift

Seit Java 5 und Java 6 sind im bin-Ordner einer JDK-Installation Programme hinzugekommen, die die gestarteten Java-Programme auflisten und gezielte Anfragen erlauben. Wie andere Dienstprogramme, dokumentiert Sun die Programme unter http://tutego.com/go/tools. Zwei Webseiten mit Beschreibungen einiger Tools sind http://tutego.com/go/observer und http://tutego.com/go/heap.


Galileo Computing - Zum Seitenanfang

28.5.1 jps Zur nächsten ÜberschriftZur vorigen Überschrift

Das Programm jps ist das »Java Virtual Machine Process Status Tool« und liefert alle laufenden Java-Programme mit einem lokalen VM-Identifizierer.

C:\Programme\Java\jdk1.6.0\bin>jps -l 
2032 sun.tools.jps.Jps 
3728 
2460 C:\Programme\Eclipse\eclipse32\startup.jar

Die Option -l zeigt den Paketnamen an. Die weitere Option -m zeigt Argumente der main()-Funktion. In dieser Sitzung ist die ID von Eclipse 2460. Die folgenden Beispiele nutzt die ID für zusätzliche Anfragen.


Galileo Computing - Zum Seitenanfang

28.5.2 jstat Zur nächsten ÜberschriftZur vorigen Überschrift

Mit jstat, dem »Java Virtual Machine Statistics Monitoring Tool«, ist es möglich, Performance-Statistiken zu erfragen.

C:\Programme\Java\jdk1.6.0\bin>jstat -gcutil 2460 
  S0     S1     E      O      P     YGC     YGCT    FGC    FGCT     GCT 
  0,00   0,00   0,14  38,88  99,64    299    2,682   107   55,371   58,053

Die Ausgaben zeigen zum Beispiel mit FGC die Anzahl der GC-Ereignisse an.


Galileo Computing - Zum Seitenanfang

28.5.3 jmap Zur nächsten ÜberschriftZur vorigen Überschrift

Das Tool »Memory Map«, jmap, zeigt eine Liste mit der Anzahl der Exemplare von Java-Objekten und wie viel Hauptspeicher sie verbrauchen.

C:\Programme\Java\jdk1.6.0\bin>jmap -histo 2460 
num   #instances    #bytes  class name 
-------------------------------------- 
  1:     88096    13401560  <constMethodKlass> 
  2:     88096     7055480  <methodKlass> 
  3:    145875     6878904  <symbolKlass> 
  4:     70039     6100016  [C 
  5:      8568     5586736  <constantPoolKlass> 
  6:      8568     3901512  <instanceKlassKlass> 
  7:      7501     3419840  <constantPoolCacheKlass> 
  8:      9016     2093560  [B 
  9:     67391     1617384  java.lang.String 
 10:     11009     1247312  [I 
 11:      3435     1147928  [Ljava.util.HashMap$Entry; 
... 
3819:         1           8  org.eclipse.core.internal.expressions.TypeExtension$1 
3820:         1           8  org.eclipse.jdt.launching.StandardSourcePathProvider 
Total   707359    60781592

Galileo Computing - Zum Seitenanfang

28.5.4 jstack topZur vorigen Überschrift

Das Stack-Trace-Programm jstack zeigt laufende Threads an zusammen mit Informationen über den durch Monitore erzwungenen Wartezustand. Ein Ausschnitt für die Eclipse-Threads:

C:\Programme\Java\jdk1.6.0\bin>jstack 2460 
2006-08-01 21:19:38 
Full thread dump Java HotSpot(TM) Client VM (1.6.0-rc-b92 mixed mode, sharing): 
 
"CompilerThread0" daemon prio=10 tid=0x02b08000 nid=0x8b0 waiting on condition 
 [0x00000000..0x02dbf61c] 
   java.lang.Thread.State: RUNNABLE 
 
"Finalizer" daemon prio=8 tid=0x02b01800 nid=0xfd0 in Object.wait() [0x02ccf000. 
.0x02ccfa94] 
   java.lang.Thread.State: WAITING (on object monitor) 
        at java.lang.Object.wait(Native Method) 
        – waiting on <0x17d102b0> (a java.lang.ref.ReferenceQueue$Lock) 
        at java.lang.ref.ReferenceQueue.remove(Unknown Source) 
        – locked <0x17d102b0> (a java.lang.ref.ReferenceQueue$Lock) 
        at java.lang.ref.ReferenceQueue.remove(Unknown Source) 
        at java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source) 
 
"main" prio=6 tid=0x00386000 nid=0x8d4 runnable [0x003ef000..0x003efe5c] 
   java.lang.Thread.State: RUNNABLE 
        at org.eclipse.swt.internal.win32.OS.WaitMessage(Native Method) 
        at org.eclipse.swt.widgets.Display.sleep(Display.java:3736) 
 ... 
"VM Thread" prio=10 tid=0x02af3c00 nid=0xb04 runnable 
"VM Periodic Task Thread" prio=10 tid=0x02b27800 nid=0x16c waiting on condition 
JNI global references: 1307


Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.






<< zurück
  Zum Katalog
Zum Katalog: Java ist auch eine Insel





Java ist auch eine Insel
Jetzt bestellen


 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Tipp
Zum Katalog: Coding for Fun





 Coding for Fun


 Buchempfehlungen
Zum Katalog: Objektorientierte Programmierung





 Objektorientierte
 Programmierung


Zum Katalog: Einstieg in Eclipse 3.4






 Einstieg in
 Eclipse 3.4


Zum Katalog: Java 6 lernen mit Eclipse






 Java 6 lernen
 mit Eclipse


Zum Katalog: NetBeans Platform 6






 NetBeans
 Platform 6


Zum Katalog: Java und XML






 Java und XML


Zum Katalog: Visual C# 2008






 Visual C# 2008


Zum Katalog: IT-Handbuch für Fachinformatiker






 IT-Handbuch für
 Fachinformatiker


Zum Katalog: C++ von A bis Z






 C++ von A bis Z


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo




Copyright © Galileo Press 2009
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Galileo Computing]

Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de