Die Müllabfuhr kümmert sich um die Freigabe von ungenutzten Speicher .
Es gibt verschiedene Gründe, warum die Erweiterung der GC zur Freigabe anderer Ressourcen problematisch ist. Einer davon ist, dass Finalizer (Methoden, die ausgeführt werden, wenn ein Objekt garbage collected wird) Referenzzyklen uneinholbar machen, es sei denn, Sie schränken die Dereferenzierung von Finalizern stark ein, was ihre Verwendung sehr schwierig macht.
Ein weiterer Grund ist, dass die meisten Ressourcen zeitnah freigegeben werden müssen, was nicht möglich ist, wenn man sich auf die Garbage Collection verlässt.
Ein weiterer Grund ist, dass die Beschränkung von GC auf die Speicherverwaltung das Problem der große Masse der Ressourcenverwaltung in jeder Anwendung, und fast alle der uninteressant Ressourcenmanagement. Andere Ressourcen sind in der Regel so interessant, dass sie es verdienen zusätzlichen Code, um genau festzulegen, wie sie freigegeben werden.
Ein weiterer Grund ist, dass GC in einigen Anwendungen die Anwendung schneller macht, weil es die Menge an Kopiervorgängen reduziert, um die Semantik des Eigentums zu berücksichtigen. Dies ist bei anderen Ressourcen nicht der Fall.
Andere Leute könnten stundenlang so weitermachen.