Die Hauptforschung in diesem Artikel ist der relevante Inhalt der detaillierten Erläuterung der Flag -Einstellungen in JVM, die wie folgt eingeführt wird.
-Xmx3550m: Stellen Sie den maximal verfügbaren Speicher von JVM auf 3550 m ein.
-Xms3550m: Stellen Sie den anfänglichen verfügbaren Speicher von JVM auf 3550 m ein.
-Xmn2g: Setzen Sie die Größe der jungen Generation auf 2G.
-XSSS128K: Stellen Sie die Stapelgröße jedes Fadens auf 128K ein
-Xx: newSize = 4: Setzen Sie die Größe der jungen Generation auf 4
-Xx: NewRatio = 4: Setzen Sie das Verhältnis der jungen Generation (einschließlich Eden und zwei Überlebenden) zur alten Generation (ohne die persistente Generation) zu 4, und dann das Verhältnis der jungen Generation zur alten Generation 1: 4, und die junge Generation macht 1/5 des gesamten Stapels aus.
-Xx: Survivorratio = 4: Legt das Größenverhältnis zwischen dem Edenbereich und dem Überlebendenbereich in der jungen Generation fest. Das Verhältnis zwischen den beiden Überlebensgebieten und einem Edenbereich beträgt 2: 4, und ein Überlebendenbereich beträgt 1/6 der gesamten jungen Generation.
-Xx: maxpermSize = 16m: Setzen Sie die persistente Generationsgröße auf 16 m.
-Xx: preteuresizeThreshold = n, Objekte größer als n werden direkt in das Alter platziert
-Xx: maxtenuringThreshold = 0: das maximale Müllalter einstellen. Wenn das Objekt der jungen Generation auf 0 gesetzt ist, wird sie nicht durch den Survivor -Bereich gehen und direkt in die alte Generation eintreten.
-Xx:+useParalleloldGC: Konfigurieren Sie die Müllsammlung der alten Generation auf parallele Sammlung.
Ganze Haufen Größe = Größe der Jugendgenerierung + alte Generation Größe + persistente Erzeugungsgröße.
-Xx:+useserialgc: Setzen Sie den Seriensammler
-XX:+UseParallelGC: Setzen Sie den parallelen Sammler
-XX:+UseParalledLoldGC: Einrichten Sie einen parallelen Sammler der alten Generation ein
-Xx:+useconcmarksweepgc: Richten Sie den gleichzeitigen Sammler ein
-Xx:+printgc
-Xx:+printgcdetails
-Xx:+printgctimestamps
-Xloggc: Dateiname
-XX: ParallelgcThreads = N: Stellen Sie die Anzahl der CPUs fest, die beim Sammeln des Parallelsammlers verwendet werden. Die Anzahl der parallel gesammelten Threads.
-Xx: maxgcpausemillis = n: Setzen Sie die maximale Pausezeit für die parallele Sammlung
-Xx: gctimeratio = n: Setzen Sie den Prozentsatz der Müllabfuhrzeit für die Programmablaufzeit. Die Formel ist 1/(1+n)
-Xx:+cmIncrementalMode: auf den inkrementellen Modus einstellen. Es ist für einzelne CPU -Situationen geeignet.
-Xx: ParallelgcThreads = N: Setzen Sie die Anzahl der CPUs, die verwendet werden, wenn die junge Erzeugung des gleichzeitigen Sammlers eine parallele Sammlung ist. Die Anzahl der in der parallelen Sammlung verwendeten Threads.
Angenommen, es gibt eine Datei namens testmem.java
Javac testmem.java Java -verbose: GC -xms20m -xmx20m -xmn10m -xx:+printgcdetails -xx: Survivorratio = 8 TestMem
-Xms20m: Die anfängliche Größe des Java -Haufens in JVM beträgt 20 m. (Einschließlich der neuen Generation und älteren Menschen)
-Xmx20m: Die maximale Größe des Java -Haufens in JVM beträgt 20 m, was bedeutet, dass sie nicht skalierbar ist. (Einschließlich der neuen Generation und älteren Menschen)
-Xmn10m: Die Größe der neuen Generation beträgt 10 m
-XX:+printgcdetails: detaillierte GC -Informationen drucken
-Xx: Survivorratio = 8: Das räumliche Verhältnis von einem End zu einem Überlebenden in der neuen Generation beträgt 8: 1, dann beträgt das Verhältnis von zwei Überlebenden zu einem Eden -Gebiet 2: 8, und ein Überlebendenbereich ist für 1/10 der gesamten jungen Generation ausmacht
Nachdem wir die oben genannten Flag -Informationen kennen, können wir die folgenden Informationen erhalten:
Die Gesamtgröße des Java -Haufens beträgt 20 m = 20 * 1024K = 20480k
Die Größe der keponymen Erzeugung: 10 m = 10 * 1024K = 10240K
Eden Space: 10240k * 8/10 = 8192k
aus Raum: 10240k * 1/10 = 1024k
zum Raum: 10240k * 1/10 = 1024k
Größe des Alters: 20 m - 10 m = 10 m = 10240k
Das obige ist die detaillierte Erklärung der Flaggeneinstellungen in JVM in diesem Artikel. Ich hoffe, es wird für alle hilfreich sein. Interessierte Freunde können weiterhin auf andere verwandte Themen auf dieser Website verweisen. Wenn es Mängel gibt, hinterlassen Sie bitte eine Nachricht, um darauf hinzuweisen. Vielen Dank an Freunde für Ihre Unterstützung für diese Seite!