Ist die Garbage Collection in der Programmiersprache zum Sammeln von Heap-Speicher nichts anderes?

388
FunctionBlock

Die nicht mehr verwendete Garbage Collection zum Recyceln von Heapspeicher wird freigegeben. Ist ein Speicherleck kein ausreichender Speicherplatz für die Ausführung des Programms? Was wir normalerweise sagen, "aus dem Arbeitsspeicher" bezieht sich auf "Auslaufzeitspeicher", was "Heapspeicher" ist?

1

1 Antwort auf die Frage

0
Mureinik

Die Garbage Collection bezieht sich normalerweise auf den Heapspeicher.

Beachten Sie, dass Speicherverluste und Speicherfehler nicht gleichbedeutend sind. Ein Speicherverlust ist eine Situation, in der ein Teil des zugewiesenen Speichers (z. B. ein Objekt in einer OO-Sprache) nicht mehr benötigt wird, aus irgendeinem Grund jedoch nicht freigegeben / gesammelt werden kann (z. B. der Programmierer vergessen hat, einen Verweis darauf zu löschen).
Sie können einen Speicherverlust haben, der keinen Speicherfehler verursacht (wenn das Leck ausreichend klein ist), und Sie können einen solchen Fehler erhalten, ohne einen Speicherverlust zu haben (wenn Sie legitimerweise versuchen, mehr Speicher zuzuweisen, als dem Prozess zur Verfügung steht ).