0
它在Guava's doc說,那如何在Guava的AbstractLoadingCache中控制堆棧大小?
要實現緩存,程序員只需要擴展此類 並提供LoadingCache.get(對象)和 Cache.getIfPresent實現(java.lang中.Object)方法。
但是,如何緩存大小?任何緩存都可以忘記舊數據。如何控制這個?
它在Guava's doc說,那如何在Guava的AbstractLoadingCache中控制堆棧大小?
要實現緩存,程序員只需要擴展此類 並提供LoadingCache.get(對象)和 Cache.getIfPresent實現(java.lang中.Object)方法。
但是,如何緩存大小?任何緩存都可以忘記舊數據。如何控制這個?
如果您使用的是AbstractLoadingCache
,則需要編寫自己的緩存實施並自行控制這些詳細信息。
如果您只是想要預先構建的緩存,其中包含限制最大大小的內容,請使用CacheBuilder
並使用maximumSize
方法。
據說「程序員只需要擴展」......並不是說我希望做別的事情,既沒有說如果我想要做什麼...... –
@SuzanCioc「AbstractLoadingCache」怎麼能告訴你如何去做什麼時候完全取決於你?你可以實現任何你想要的緩存。 –
如果要使用自定義數據結構編寫全新的緩存實現,那麼'AbstractLoadingCache'的位置就在那裏。您可以根據自定義的數據結構構建需要的任何內容 - 大小限制,自定義緩存行爲等等。如果你不想從頭開始構建自己的緩存數據結構,那就是'CacheBuilder'的用處 - 這是一個相當強大的通用緩存實現。 –