Junior — Middle
Java'da xotira boshqaruvi kontekstida yumshoq havola nima ekanligini tushuntirib bera olasizmi?
sobes.tech AI
AIdan javob
Java'da SoftReference (Yumshoq Reference) — bu turdagi reference bo'lib, tizimda etarli xotira bo'lmasa, ob'ektni garbage collector yig'ib olishi mumkin, lekin xotira etarli bo'lsa, ob'ekt saqlanib qoladi.
Bu cache uchun foydalidir: yumshoq referenslarga ega ob'ektlar darhol o'chirilmaydi, faqat xotira bo'shatilishi kerak bo'lsa, o'chiriladi.
Yumshoq referensdan foydalanish misoli:
import java.lang.ref.SoftReference;
public class SoftReferenceExample {
public static void main(String[] args) {
Object strongRef = new Object();
SoftReference<Object> softRef = new SoftReference<>(strongRef);
strongRef = null; // endi ob'ekt faqat yumshoq referens orqali mavjud
Object obj = softRef.get();
if (obj != null) {
System.out.println("Ob'ekt mavjud");
} else {
System.out.println("Ob'ekt garbage collector tomonidan yig'ib olindi");
}
}
}