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?
<< zurück | Galileo Computing / <openbook> / Java-Insel | vor >>
Java ist auch eine Insel (8. Auflage) von Christian Ullenboom Programmieren mit der Java Standard Edition Version 6
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 |
| 28 Dienstprogramme für die Java-Umgebung
|  | 28.1 Die Werkzeuge im Überblick
|  | 28.2 Java-Compiler
|  |  | 28.2.1 Bytecode-Compiler javac
|  |  | 28.2.2 Native Compiler
|  |  | 28.2.3 Java-Programme in ein natives ausführbares Programm einpacken
|  | 28.3 Der Java-Interpreter java
|  |  | 28.3.1 Der Unterschied zwischen java.exe und javaw.exe
|  | 28.4 Das Archivformat Jar
|  |  | 28.4.1 Das Dienstprogramm Jar benutzen
|  |  | 28.4.2 Das Manifest
|  |  | 28.4.3 Applikationen in Jar-Archiven starten
|  |  | 28.4.4 Applets in Jar-Archiven
|  | 28.5 Monitoringprogramme
|  |  | 28.5.1 jps
|  |  | 28.5.2 jstat
|  |  | 28.5.3 jmap
|  |  | 28.5.4 jstack
|  | 28.6 Ant
|  |  | 28.6.1 Bezug und Installation von Ant
|  |  | 28.6.2 Properties
|  |  | 28.6.3 Externe und vordefinierte Properties
|  |  | 28.6.4 Weitere Ant-Tasks
|  |  | 28.6.5 Das Obfuscator-Programm ProGuard
|  | 28.7 Weitere Dienstprogramme
|  |  | 28.7.1 Sourcecode Beautifier
|  |  | 28.7.2 Java-Programme als Systemdienst ausführen
|  | 28.8 Zum Weiterlesen
## 28.5 Monitoringprogramme 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. ### 28.5.1 jps 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. ### 28.5.2 jstat 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. ### 28.5.3 jmap 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
### 28.5.4 jstack 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. >> Zum Feedback-Formular
<< zurück | <top> | vor >>
Zum Katalog
Java ist auch eine Insel Jetzt bestellen
Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen? Ihre Meinung
Tipp
| Coding for Fun
Buchempfehlungen
| Objektorientierte Programmierung
| Einstieg in Eclipse 3.4
| Java 6 lernen mit Eclipse
| NetBeans Platform 6
| Java und XML
| Visual C# 2008
| IT-Handbuch für Fachinformatiker
| C++ von A bis Z
Shopping
Versandkostenfrei bestellen in Deutschland und Österreich Info

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