In Java gibt es eine Datenstruktur namens WeakHashMap, die schwache Referenzen als Schlüssel speichert. Wann immer die schwachen Referenzen aus dem Speicher genommen werden, wird der Eintrag aus der Karte entfernt.
Wenn ich eine Datenstruktur wie einen Stack oder ein Set habe, in dem ich schwache Referenzen speichere, werden ihre Einträge automatisch entfernt, wenn die schwache Referenz aus dem Speicher genommen wird?
Im Folgenden finden Sie ein Beispiel für einen Stack, der schwache Referenzen speichert.
%Vor% Ja. Was Sie beschreiben, ist eine Eigenschaft von schwachen Referenzen im Allgemeinen, nicht WeakHashMap
spezifisch.
Von der API :
Angenommen, der Garbage Collector bestimmt zu einem bestimmten Zeitpunkt, dass ein Objekt schwach erreichbar ist. Zu dieser Zeit wird es alle schwachen Referenzen auf dieses Objekt atomar löschen ...
Tags und Links java stack set weak-references weakhashmap