Sobes.tech
Junior — Middle

Yaddaş idarəsində zəif istinadın nə demək olduğunu izah edə bilərsinizmi?

sobes.tech Süni İntellekt

AI-dan cavab

Zəif istinad (weak reference) yaddaşda obyektə istinad edən və çöp toplayıcısının bu obyekti silməsinə mane olmayan bir istinaddır.

Yaddaş idarəsində zəif istinadlar, obyektə istinad saxlamaq istəyirsinizsə, lakin onu süni şəkildə yaddaşda saxlamamaq üçün faydalıdır. Əgər obyekt başqa yerlərdə artıq lazım deyilsə, o, silinəcək və zəif istinad etibarsız olacaq.

Məsələn, Android-də zəif istinadlar tez-tez keşik və ya uzunömürlü obyektlərin kontekstinə (Context) istinad üçün istifadə olunur, yaddaş sızıntılarını qarşısını almaq üçün.

Java nümunəsi:

WeakReference<MyObject> weakRef = new WeakReference<>(myObject);

// Əgər myObject artıq güclü istinadlara malik deyilsə, o silinə bilər,
// və weakRef.get() null qaytaracaq.