我有一個LinkedHashMap
像這樣:如何從LinkedHashMap的對象聽衆當鑰匙拔出
private LinkedHashMap<String, Column> columns = new LinkedHashMap<>();
我添加一個Column
:
columns.put(name, column);
凡Column
有聽衆的對象。
當我除去柱:
columns.remove(name);
的聽衆仍然活躍。
我已經嘗試了WeakHashMap
,這確實有所幫助,聽衆不再活躍。
但是WeakHashMap
不保留的插入順序。
我也試圖讓Column
它設置爲null,然後從地圖中刪除,但沒有運氣的關鍵。聽衆仍然活躍。
有什麼建議嗎?我錯過了什麼嗎?
當然,但我刪除列而不是聽衆。有任何想法嗎?一列可以有一個監聽者或沒有。我試圖走在這條如removeColumn香草,爲了做是爲了避免先得到列,然後檢查是否有監聽器,監聽器刪除等 我主要是不明白爲什麼對象不是GC –
端了有了這個。添加onstart和ondestroy生命週期調用 –