[英]How to reinstate the Blazor WASM "offline-cache" after a cleanup of the caches?
[英]Is that caches or cache?
我在渐进式网络应用上阅读谷歌幻灯片 ,他们提到缓存接口有以下方法
cache.add()
cache.addAll()
cache..put()
cache.delete()
cache.keys()
cache.match()
cache.matchAll()
但在真正实施进一步下滑,他们有时会用一些缓存S(以s),有时缓存
caches.open() // whereas this method was not mentioned anywhere
caches.keys()
caches.delete()
caches.match()
cache.put () // only here using cache
另外,在MDN中检查相同内容
他们正在编写Cache.add,Cache.addAll和Cache.put(使用大写c)
并使用caches.open , cache.match()和其他方法
我想知道缓存和缓存是2个不同的对象(或接口)还是我在这里缺少的?
请提供一些资源或链接以了解更多相关信息。
window.caches
是一个CacheStorage
接口,它存储所有已命名的Cache
对象。 例如, window.caches.open()
方法返回一个解析为Cache
对象的promise。
// Get a named Cache object from CacheStorage
window.caches.open('cachename').then(cache => {
// Work with resolved cache object (instance of Cache)
});
因此,只要它们引用caches
,它们就意味着全局CacheStorage
接口,而cache
是并且任意命名变量,存储打开/解析的单个Cache
。
确切地说,缓存存储缓存对象。 同时引用附带图片中的示例(Google Chrome中的开发人员工具)中的渐进式网络应用链接
要阅读有关缓存的更多信息,请参阅CacheStorage 。
(因为“你可以通过全局缓存属性访问CacheStorage”,所以它是同一件事。)
缓存在各种用例中非常有用。 例如,当值计算或检索的代价很高时,您应该考虑使用缓存,并且您需要多次在某个输入上使用它的值。
Cache类似于ConcurrentMap,但不完全相同。 最根本的区别在于ConcurrentMap会持久保存添加到其中的所有元素,直到它们被明确删除。 另一方面,缓存通常被配置为自动逐出条目,以便限制其内存占用。 在某些情况下,由于其自动缓存加载,即使它没有逐出条目,LoadingCache也很有用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.