长时间听众 - 第一次来电.我希望得到一些建议.我一直在阅读.net中的缓存 - 包括System.Web.Caching和System.Runtime.Caching.我想知道我可以获得什么额外的好处与简单地创建一个带锁定的静态变量.我目前的(简单的)缓存方法是这样的:
public class Cache
{
private static List<Category> _allCategories;
private static readonly object _lockObject = new object();
public static List<Category> AllCategories
{
get
{
lock (_lockObject)
{
if (_allCategories == null)
{
_allCategories = //DB CALL TO POPULATE
}
}
return _allCategories;
}
}
}
Run Code Online (Sandbox Code Playgroud)
除了到期(我不希望它到期)我不知道使用内置缓存的好处是什么.
也许对于不适用于我的更复杂的缓存方案有好处 - 或者我可能只是缺少某些东西(这不是第一次).
那么,如果我想要一个永不过期的缓存,使用缓存有什么好处?静态变量不这样做吗?