Junior — Middle
Можете ли објаснити шта значи слаба референца у управљању меморијом?
sobes.tech АИ
Одговор од АИ
Slaba referenca (weak reference) je referenca na objekat u memoriji koja ne sprečava sakupljač smeća da ukloni taj objekat ako na njega više nema jakih referenci.
U upravljanju memorijom, slabe reference su korisne kada je potrebno sačuvati referencu na objekat, ali ga ne držati večno u memoriji. Ako objekat više nije potreban na drugim mestima, biće uklonjen, a slaba referenca će postati nevažeća.
Na primer, u Androidu, slabe reference se često koriste za keširanje ili za reference na kontekst (Context) iz dugotrajnih objekata, kako bi se izbegli curenja memorije.
Primer u Javi:
WeakReference<MyObject> weakRef = new WeakReference<>(myObject);
// Ako myObject više nema jake reference, može biti uklonjen,
// i weakRef.get() će vratiti null.