Junior — Middle
Java-da yaddaş idarəetməsi kontekstində zəif istinadın nə olduğunu izah edə bilərsinizmi?
sobes.tech Süni İntellekt
AI-dan cavab
Java-da SoftReference (Yumşaq Referans) — bu növ referansdır ki, sistemdə kifayət qədər yaddaş yoxdursa, obyektin toplanmasına imkan verir, lakin yaddaş kifayət qədər olduğu müddətdə obyekt saxlanılır.
Bu, keş üçün faydalıdır: yumşaq referanslara malik obyektlər dərhal silinmir, yalnız yaddaş boşaldılmalı olduqda silinir.
Yumşaq referansın istifadəsinə nümunə:
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; // indi obyekt yalnız yumşaq referans vasitəsilə əlçatan
Object obj = softRef.get();
if (obj != null) {
System.out.println("Obyekt əlçatan");
} else {
System.out.println("Obyekt toplanıb, garbage collector tərəfindən");
}
}
}