簡體   English   中英

如何從guava LoadingCache獲取所有值而不傳遞任何鍵

[英]How to get all values from guava LoadingCache without passing any keys

我正在使用Guava LoadingCache來緩存一些結果。 使用load方法我從其他源獲取結果並使用' put(key,value) '放入緩存。 現在我要解決的問題是:我希望通過傳遞任何鍵來獲取該緩存中的所有可用結果。 因為我有興趣獲取當時緩存中顯示的所有值,而不管任何特定的鍵。

getall(Iterable<?> keys)getAllPresent(Iterable<?> keys)方法,但是那些期望鍵被傳遞。

您可以使用(Loading)Cache#asMap視圖並對返回的ConcurrentMap進行操作。 在Guava wiki頁面上有很好的描述:

您可以使用其asMap視圖將任何Cache視為ConcurrentMap ,但asMap視圖如何與Cache交互需要一些解釋。

  • cache.asMap()包含當前在緩存中加載的所有條目。 因此,例如, cache.asMap().keySet()包含所有當前加載的鍵。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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