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'的用处 - 这是一个相当强大的通用缓存实现。 –