Junior — Middle
Waarom is het belangrijk om het vrijmaken van geheugen in sommige gevallen handmatig te beheren?
sobes.tech AI
Antwoord van AI
In C# wordt meestal de Garbage Collector gebruikt, die automatisch niet-gebruikte geheugen vrijmaakt. Echter, in sommige gevallen is het belangrijk om het vrijmaken van geheugen handmatig te beheren:
- Wanneer een object niet-beheerde bronnen gebruikt (bestanden, netwerkverbindingen, descriptors) die niet door de garbage collector worden gecontroleerd.
- Om bronnen tijdig vrij te maken en lekken en blokkades te voorkomen.
Hiervoor wordt de interface IDisposable geïmplementeerd en de methode Dispose(), waarin de bronnen expliciet worden vrijgegeven.
Voorbeeld:
class FileHandler : IDisposable
{
private FileStream _fileStream;
public FileHandler(string path) {
_fileStream = new FileStream(path, FileMode.Open);
}
public void Dispose() {
_fileStream?.Dispose();
}
}
Op deze manier is het handmatig beheren van het vrijmaken van geheugen belangrijk om bronnen te controleren en problemen met prestaties en stabiliteit van de applicatie te voorkomen.