Junior — Middle
Kunt u uitleggen wat een zwakke verwijzing betekent in geheugenbeheer?
sobes.tech AI
Antwoord van AI
Een zwakke verwijzing (weak reference) is een verwijzing naar een object in het geheugen die de garbage collector niet verhindert om dat object te verwijderen als er geen sterke verwijzingen meer zijn.
Bij geheugenbeheer zijn zwakke verwijzingen handig wanneer je een verwijzing naar een object wilt behouden, maar het niet kunstmatig in het geheugen wilt houden. Als het object elders niet meer nodig is, wordt het verwijderd en wordt de zwakke verwijzing ongeldig.
Bijvoorbeeld, in Android worden zwakke verwijzingen vaak gebruikt voor caching of voor verwijzingen naar de context (Context) van langdurige objecten, om geheugenlekken te voorkomen.
Voorbeeld in Java:
WeakReference<MyObject> weakRef = new WeakReference<>(myObject);
// Als myObject geen sterke verwijzingen meer heeft, kan het worden verwijderd,
// en weakRef.get() zal null teruggeven.