NHibernate的syscache如何工作到期?
如果我将到期时间设置为10分钟,并且每分钟我添加一个实体,当前10分钟(应用程序启动后)结束时,是删除所有10个实体,还是只删除第一个实体?
是否所有数据都是从缓存中删除的,或者每个实体都有时间戳?
答案 0 :(得分:4)
我刚刚查看SysCache source code内部,这一行清楚地表明它是绝对过期的:
cache.Add(
cacheKey,
new DictionaryEntry(key, value),
new CacheDependency(null, new[] {rootCacheKey}),
DateTime.Now.Add(expiration),
System.Web.Caching.Cache.NoSlidingExpiration,
priority,
null);
答案 1 :(得分:0)
滑动过期,正如Rippo指出的那样。
http://docs.huihoo.com/hibernate/nhibernate-reference-1.2.0/caches.html