Sobes.tech
Junior — Middle

Wie unterscheidet sich das Verhalten des Garbage Collectors bei der Verwaltung von Objekten mit 10 KB und 100 KB?

sobes.tech KI

Antwort von AI

In C# teilt der Garbage Collector (GC) Objekte in Generationen (Gen 0, Gen 1, Gen 2) und behandelt große Objekte (Large Object Heap, LOH) separat.

Objekte bis zu etwa 85 KB werden im normalen Heap platziert und nehmen an der generativen Müllsammlung teil. Objekte größer als 85 KB gelten als groß und werden im LOH platziert.

Eigenschaften:

  • Kleine Objekte (<85 KB): werden häufig erstellt und gelöscht, der GC sammelt sie öfter, was eine schnelle Freigabe des Speichers ermöglicht.
  • Große Objekte (>85 KB): werden im LOH platziert, der seltener gesammelt wird, da Operationen mit ihm zeitaufwändiger sind.

Daher werden Objekte von 10 KB häufiger gesammelt, während Objekte von 100 KB seltener gesammelt werden, aber ihre Entfernung ressourcenintensiver ist.