Memory Leak
Nicht mehr benötigter Speicher bleibt während des Betriebs unnötig gebunden.
Was ist ein Memory Leak?
Ein Memory Leak, auch Speicherleck, liegt vor, wenn nicht mehr benötigter Speicher unnötig gebunden bleibt. Bei längerer Nutzung kann dadurch der Speicherbedarf wachsen. Automatische Speicherbereinigung verhindert das nicht grundsätzlich: Ein weiterhin erreichbares Objekt kann aus Sicht der Anwendung längst überflüssig sein und trotzdem erhalten bleiben. Kurzfristig hoher Speicherverbrauch allein beweist noch kein Leck.
In einem erfundenen Portal werden geschlossene Dokumentansichten weiterhin in einer global erreichbaren Liste gehalten. Ihre Daten bleiben dadurch erreichbar, obwohl sie nicht mehr gebraucht werden. Das Team untersucht die haltenden Referenzen und den Lebenszyklus der Ansichten. Wiederholtes Öffnen und Schließen wird nach einer Korrektur unter passenden Bedingungen verglichen. Entscheidend ist, ob unnötige Bindungen verschwinden; ein einzelner Momentwert oder ein Neustart erklärt die Ursache nicht.
Quellen
Verwandte Begriffe
- LaufzeitumgebungDie Umgebung, in der ein Programm ausgeführt wird und auf bereitgestellte Funktionen zugreift.
- DebuggingEine Fehlerursache anhand von Verhalten, Daten und Programmausführung systematisch eingrenzen.
- Unit-TestEine gezielte Prüfung eines kleinen, festgelegten Teils der Software, etwa einer Regel oder Funktion.
- Cache StampedeEin Cache Stampede entsteht, wenn gleichzeitige Anfragen dieselben Daten im Cache nicht finden und dieselbe teure Arbeit mehrfach starten.
- BackpressureBackpressure passt den Datenzufluss an die Verarbeitungskapazität des Empfängers an, indem dieser eine Verlangsamung oder Pause signalisiert.
- Race ConditionEin fehlerhaftes Ergebnis hängt von der zeitlichen Reihenfolge überlappender Zugriffe ab.
Ihr Vorhaben mit ASES
Beschreiben Sie uns Ihr Vorhaben. Wir melden uns mit einer ersten Einschätzung.