cost 360 ms
我可以將 WeakHashMap 用於類的緩存字段嗎?

[英]Can I use WeakHashMap for cached fields of classes?

出於某種原因,我需要使用反射來緩存類的條目及其字段或字段名稱。 private static final Map<Class<?>, String> ID_ATTRIBUTE_NAMES = new WeakHashMap<>(); privat ...

WeakHashMap 如何在引用放入 ReferenceQueue 后_實際_找到條目

[英]WeakHashMap how is the entry _actually_ found after the reference is put on the ReferenceQueue

WeakHashMap與WeakReference和ReferenceQueue結合工作非常相似——關於此的新聞為零。 這是它應該如何工作的精簡示例: 這正是WeakHashMap工作方式 - 當referent被回收並將reference放在ReferenceQueue上時,它會收到通知。 ...

Java - 應用程序中使用的 HashMap 和 WeakHashMap 引用

[英]Java - HashMap and WeakHashMap references used in Application

只是想從 GC 的角度理解一些東西 我的理解是,一旦這個方法調用離開堆棧,無論使用HashMap還是WeakHashMap都沒有對where引用 - 但是由於弱引用是弱可達的,這不是 GCd 更快嗎? 但是如果方法調用離開堆棧,那么無論如何都沒有可訪問的引用。 我想我真正的問題是——“在這里使 ...

為什么我的 WeakHashMap 條目沒有被 GC 刪除?

[英]Why my WeakHashMap entry doesn't be removed by GC?

我有一個類來管理幾個功能的鎖對象。 我發現 WeakHashMap 應該符合我的要求。 這是我的代碼: 然而,經過簡單的測試,我發現鎖對象在GC之后並不會被移除。 你能告訴我我的實施有什么問題嗎? 先感謝您! ...

在weakHashMap中,如果我更新或更改之前存儲的鍵object,垃圾收集器會刪除鍵值對

[英]In weakHashMap if i update or change the previously stored key object, the garbage Collector deletes the key value pair

我在WeakHashMap中存儲了一個 object 作為鍵。 現在,如果我更改它的值,然后調用 GC 並打印map ,那么什么都沒有。 預期 output: {200,"sgdjsgd"} 實際 output: {} ...

Java7 WeakHashMap isEmpty()似乎錯了

[英]Java7 WeakHashMap isEmpty() seems wrong

我正在嘗試使用Java7的WeakHashMap,我發現它的isEmpty()方法給我錯誤的結果。 實際結果: 假 真正 {} 也就是說, map.isEmpty()和map.keySet()。isEmpty()不一致。 有人能幫我理解嗎? 非常感謝。 ...

Java WeakHashMap 清理

[英]Java WeakHashMap clean up

我試圖弄清楚 WeakHashMap 在垃圾收集后如何清理。 很多人可能都知道,當 WeakHashMap 條目的鍵被垃圾回收時,它會自動刪除。 但是,例如,如果我做這樣的事情: ArrayList 不會清除空的 WeakReference 對象,但為什么 WeakHashMap 會呢? 哪個 ...

WeakHashMap是否在不斷增長,還是清除了垃圾密鑰?

[英]Is WeakHashMap ever-growing, or does it clear out the garbage keys?

我試圖用WeakHashMap作為同時Set弱引用。 當一個元素進入垃圾收集時,我的集合繼續將其作為集合的一部分進行報告。 因此,地圖似乎在不斷增長。 文件說: 當一個密鑰被丟棄時,它的條目將被有效地從地圖中刪除,...... 但實際情況似乎並非如此。 W ...

避免Java接口中的樣板

[英]Avoiding boilerplate in Java interfaces

我正在嘗試使用存儲過程來構建鍵值存儲,並且我發現枚舉可用於定義事物。 我希望數據庫成為表的枚舉,並且表與操作的枚舉和區域的枚舉關聯。 問題是枚舉不能擴展抽象類,因此我必須使用接口。 因此,我有很多枚舉,每個枚舉都必須實現相同的代碼(定義相同的字段,編寫相同的構造函數以填充這些字段,並覆蓋使 ...

弱參考可維護性

[英]Weak Reference maintainability

我正在閱讀java中的弱引用,聽起來很簡單,如果一個對象只有弱引用,那么它可以被垃圾收集器收集。 除非您的參考在使用該值之前變為死亡,否則會發生什么? 例: 假設我有一個帶有密鑰{1,2,3,4,5}的弱哈希映射,所有值都是1.現在假設你有[1:10]中的數字的隨機數生成器。 現 ...

帶有不可變密鑰的Java WeakHashMap

[英]Java WeakHashMap with immutable key

我想對即將在內存中存在的對象使用WeakHashMap 。 每個對象都有一個ID(唯一的整數字段,它是DB的主鍵),因此我的第一個想法是將該字段用作對象的鍵。 但是,Integer是不可變的,因此AFAIK哈希將生成另一個不可變的Integer,因此只要任何其他不相關的對象指向該對象 ...

自動刪除WeakHashMap中的條目

[英]Automatic removal of entries in WeakHashMap

有一個WeakHashMap實例,該實例用500個條目初始化。 現在,它的密鑰已經有一天左右沒有在運行的應用程序中的任何地方引用了。 經過一定時間后,此地圖的條目會自動刪除嗎? 我的理解是,如果未引用鍵,則相應的條目將從地圖中刪除。 ...

WeakHashMap的工作原理

[英]How WeakHashMap works under the hood

我研究WeakHashMap我們的代碼以了解有關WeakReference更多知識 我發現條目看起來像這樣: 因此,當我們創建新條目時,我們調用super(key, queue); 。 它是WeakReference構造函數。 據我了解,GC將收集對象之后 ,新引用(我相信應 ...

從WeakHashMap獲取時緩存無效

[英]Cache Invalidation while Getting from WeakHashMap

我通過WeakHashMap緩存數據庫連接對象,如下所示: 可能嗎: 如果檢查了if語句,發現在緩存中已經存在一個對象,並且在運行else之前,該語句緩存無效? ...

WeakReference的。 僅保留WeakReferences時,不會刪除對象

[英]WeakReference. Objects are not removed when only WeakReferences on it left

在我們的系統內部,我們將客戶會話表示為Session類。 從歷史上看,此類的哈希碼是可變的-創建時為0,並在某個時間更改為用戶ID。 系統中存在兩個會話管理器。 客戶端會話管理器-保持活動客戶端會話的客戶端。 該管理器內部是簡單的ConcurrentHashMap &lt ...


 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM