Kapitel 6. Die Speicherbereinigung verstehen

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

Die Java-Umgebung hat mehrere ikonische oder definierende Merkmale, und die Speicherbereinigung ist eines der am deutlichsten erkennbaren.Als die Plattform zum ersten Mal veröffentlicht wurde, gab es jedoch eine beträchtliche Feindseligkeit gegenüber der Speicherbereinigung. Dies wurde durch die Tatsache genährt, dass Java absichtlich keine Möglichkeit auf Sprachebene bot, das Verhalten des Kollektors zu kontrollieren (und dies auch in modernen Versionen nicht tut).1

Das bedeutete, dass es in den ersten Tagen eine gewisse Frustration über die Leistung der GC von Java gab, die sich auf die Wahrnehmung der Plattform als Ganzes auswirkte.

Die frühe Vision einer obligatorischen, nicht vom Benutzer kontrollierbaren GC hat sich jedoch mehr als bewahrheitet, und heutzutage würden nur noch wenige Anwendungsentwickler die Meinung vertreten, dass der Speicher von Hand verwaltet werden sollte. Selbst moderne Systemprogrammiersprachen (z. B. Go und Rust) betrachten die Speicherverwaltung als die eigentliche Domäne des Compilers und der Laufzeitumgebung und nicht des Programmierers (außer in Ausnahmefällen).

Der Kern der Speicherbereinigung in Java besteht darin, dass der Programmierer nicht die genaue Lebensdauer jedes Objekts im System kennen muss, sondern dass die Laufzeitumgebung die Objekte für den Programmierer ...

Get Java optimieren now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.