PermGen in JDK 8 eliminieren
Beim Upgrade auf JDK 8 wird beim Versuch, Eclipse zu starten, möglicherweise eine Warnmeldung angezeigt. Diese Warnung weist darauf hin, dass die Java Virtual Machine (JVM)-Option „MaxPermSize“ ignoriert wird, da sie in JDK 8 entfernt wurde.
Gründe für das Ignorieren von „MaxPermSize“
Der Permanent Generation (PermGen)-Speicherplatz, der von der Option „MaxPermSize“ verwaltet wird, wurde in JDK 8 aus HotSpot entfernt. Dies war in erster Linie der Fall aufgrund mehrerer Nachteile:
MetaSpace: Ein Ersatz für PermGen
PermGen wurde durch Metaspace ersetzt, einen neuen Raum, der diese Nachteile behebt. Metaspace bietet mehrere Vorteile:
Metaspace-Tuning
Während die maximale Größe von Metaspace normalerweise unbegrenzt ist, können Sie sie mit dem Flag „-XX:MaxMetaspaceSize“ festlegen. Zusätzlich definiert „-XX:MetaspaceSize“ seine Anfangsgröße. Wenn nicht angegeben, passt sich Metaspace dynamisch an die Laufzeitanforderung an.
Zusammenfassend lässt sich sagen, dass die Eliminierung von PermGen und die Einführung von Metaspace in JDK 8 zu einer verbesserten GC-Leistung und einer vereinfachten Laufzeitverwaltung geführt haben. Entwickler sollten sich der veralteten Option „MaxPermSize“ und ihrer Auswirkungen auf ihre Anwendungen bewusst sein.
Das obige ist der detaillierte Inhalt vonWas hat PermGen in JDK 8 ersetzt und wie funktioniert es?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!