我正在编写一个MVC 5互联网应用程序,并使用MemoryCache对象来缓存对象。我看到使用MemoryCache.Set方法可以指定一个absoluteExpiration。
如果我使用以下方式从MemoryCache添加和检索对象,则absoluteExpiration设置为:
cache['cacheItem'] = testObject;
TestObject testObject = cache['cacheItem'] as TestObject;此外,当在MVC互联网应用程序中使用MemoryCache时,我应该设置可以用于MemoryCache的内存量,还是默认的实现对Azure网站足够安全?
提前谢谢。
发布于 2015-01-14 02:37:53
您的代码相当于调用Add,如下所示:
cache.Add("cacheItem", testObject, null);添加的条目将具有默认的过期时间,它是无限的(也就是说,它不会过期)。有关细节,请参阅基于CacheItemPolicy.AbsoluteExpiration的MSDN。
要回答有关内存使用的问题:(来自CacheMemoryLimitMegabytes )
默认值为零,表示MemoryCache实例根据计算机上安装的内存量管理自己的内存量。
我想说的是,让MemoryCache缺省值来决定要使用多少内存是安全的,除非您正在做一些非常花哨的事情。
https://stackoverflow.com/questions/27934739
复制相似问题