Heim >Java >JavaErste Schritte >Was ist GC in Java?

Was ist GC in Java?

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼Original
2019-11-11 14:40:524325Durchsuche

Was ist GC in Java?

GC bedeutet Garbage Collection (Gabage Collection), bei der Programmierer anfällig für Probleme sind und zu Instabilität oder sogar zum Absturz des Programms führen können.

Die von Java bereitgestellte GC-Funktion kann automatisch erkennen, ob das Objekt den Bereich überschreitet, um den Zweck der automatischen Rückgewinnung von Speicher zu erreichen. Die Java-Sprache bietet keine explizite Operationsmethode zum Freigeben von zugewiesenem Speicher.

GC ist der Garbage Collector. Java-Programmierer müssen sich nicht um die Speicherverwaltung kümmern, da der Garbage Collector sich automatisch darum kümmert. Um die Garbage Collection anzufordern, können Sie eine der folgenden Methoden aufrufen:

Runtime.getRuntime().gc()Java wurde aus C++ entwickelt. Es verzichtet auf einige umständliche und fehleranfällige Dinge in C++. Einer davon ist dieser GC.

Beim Schreiben eines C/C++-Programms definiert der Programmierer eine Variable, was bedeutet, dass ein entsprechender Platz im Speicher zum Speichern des Werts geöffnet wird. Egal wie groß der Speicher ist, er ist begrenzt. Wenn das Programm also eine bestimmte Variable nicht mehr verwenden muss, muss es diese Speicherplatzressource freigeben, damit andere Variablen sie verwenden können. In C/C++ muss der Programmierer selbst die Lösung für die Freigabe von nutzlosem Variablenspeicherplatz finden. Das heißt, wenn der Programmierer denkt, dass die Variable nutzlos ist, sollte er einen Code schreiben, um den von ihr belegten Speicher freizugeben. Auf diese Weise können Speicherlecks und Ressourcenverschwendung weitestgehend vermieden werden. Aber das ist natürlich sehr umständlich. Wenn das Programm relativ groß ist und viele Variablen vorhanden sind, vergessen Programmierer oft, den Speicher freizugeben oder den Speicher freizugeben, wenn er nicht freigegeben werden sollte. Darüber hinaus sollten Programmierer aus Entwicklungsperspektive nicht darauf achten, Speicher freizugeben. Was Programmierer tun müssen, sollte darin bestehen, die erforderlichen Programmfunktionen zu implementieren, anstatt viel Energie für die Zuweisung und Freigabe von Speicher aufzuwenden. Mit GC in Java müssen Programmierer Speicherplatz nicht manuell freigeben. Wenn die Java Virtual Machine feststellt, dass die Speicherressourcen knapp sind, bereinigt sie automatisch den von nutzlosen Variablen belegten Speicherplatz. Natürlich können Programmierer bei Bedarf explizit System.gc() in einem Java-Programm verwenden, um eine sofortige Speicherbereinigung zu erzwingen.

Da die explizite Deklaration darin besteht, einen vollständigen Scan des Heap-Speichers, also einen vollständigen GC, durchzuführen, müssen alle Aktivitäten gestoppt werden (Stop The World Collection). Kann Ihre Anwendung dem standhalten? Es zeigt, dass der Aufruf von System.gc() lediglich ein Vorschlag an die virtuelle Maschine ist und möglicherweise nicht ausgeführt wird, da System.gc() in einem Thread mit sehr niedriger Priorität ausgeführt wird.

php Chinesische Website, eine große Anzahl kostenloser

Java-Einführungs-Tutorials

, willkommen zum Online-Lernen!

Das obige ist der detaillierte Inhalt vonWas ist GC in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn