/// <summary> /// 打开指定缓存,如缓存项不存在,则自动创建该项缓存 /// </summary> /// <param name="CacheName">缓存项键值</param> /// <param name="eliminateMethod">缓存淘汰算法</param> /// <returns>该项缓存</returns> public static CacheItem <TParam, TKey, TValue> OpenCache <TParam, TKey, TValue>(string CacheName, IEliminateMethod eliminateMethod) { CacheItem <TParam, TKey, TValue> item = GetCacheItem <TParam, TKey, TValue>(CacheName); if (item == null) { item = new CacheItem <TParam, TKey, TValue>(eliminateMethod); SetCacheItem(CacheName, item); } return(item); }
/// <summary> /// 构造函数:指定缓存对象的算法,本类缓存是不进行自动同步功能,默认可保存50000条记录 /// </summary> /// <param name="eliminateMethod"></param> internal CacheItem(IEliminateMethod eliminateMethod) : this() { _IEliminateMethod = eliminateMethod; maxSize = 50000; }
/// <summary> /// 构造函数:指定缓存对象的算法,本类缓存是不进行自动同步功能,并同时指定从数据源获取单项值的委托,默认可保存50000条记录 /// </summary> /// <param name="eliminateMethod"></param> /// <param name="method"></param> internal CacheItem(IEliminateMethod eliminateMethod, Func <TParam, TValue> method) : this() { _IEliminateMethod = eliminateMethod; GetCacheDataMethod = method; maxSize = 50000; }
/// <summary> /// 打开指定缓存,如缓存项不存在,则自动创建该项缓存 /// </summary> /// <param name="CacheName">缓存项键值</param> /// <param name="eliminateMethod">缓存淘汰算法</param> /// <param name="method">获取单项值的委托</param> /// <returns>该项缓存</returns> public static CacheItem <TParam, TKey, TValue> OpenCache <TParam, TKey, TValue>(string CacheName, IEliminateMethod eliminateMethod, Func <TParam, TValue> method) { return(CacheHelper.OpenCache <TParam, TKey, TValue>(CacheName, eliminateMethod, method)); }