예제 #1
0
 /// <summary>
 ///     内存段缓存存根,提供了相关的基本操作
 /// </summary>
 /// <param name="indexer">缓存索引器</param>
 /// <param name="expireTime">过期时间</param>
 /// <exception cref="ArgumentNullException">参数不能为空</exception>
 public SegmentCacheStub(ICacheIndexer indexer, DateTime expireTime)
 {
     if (indexer == null)
     {
         throw new ArgumentNullException(nameof(indexer));
     }
     _indexer   = indexer;
     _lease     = new CacheLease(expireTime);
     _innerItem = new SegmentCacheItem(indexer);
     Fixed      = true;
 }
예제 #2
0
 /// <summary>
 ///     缓存存根,提供了相关的基本操作
 /// </summary>
 /// <param name="expireTime">过期时间</param>
 /// <typeparam name="T">缓存类型</typeparam>
 public CacheStub(DateTime expireTime)
 {
     Lease = new CacheLease(expireTime);
 }
예제 #3
0
 /// <summary>
 ///     非托管缓存存根,提供了相关的基本操作
 /// </summary>
 /// <param name="maxSize">最大容量</param>
 /// <param name="expireTime">过期时间</param>
 public UnmanagedCacheStub(int maxSize, DateTime expireTime)
 {
     Fixed       = false;
     _innerCache = new UnmanagedCacheItem(maxSize);
     _lease      = new CacheLease(expireTime);
 }
예제 #4
0
 /// <summary>
 ///     非托管缓存存根,提供了相关的基本操作
 /// </summary>
 /// <param name="ptr">内存句柄</param>
 /// <param name="maxSize">最大容量</param>
 /// <param name="useageSize">已使用大小</param>
 /// <param name="expireTime">过期时间</param>
 public UnmanagedCacheStub(IntPtr ptr, int maxSize, int useageSize, DateTime expireTime)
 {
     Fixed       = false;
     _innerCache = new UnmanagedCacheItem(ptr, maxSize, useageSize);
     _lease      = new CacheLease(expireTime);
 }
예제 #5
0
 /// <summary>
 ///     弱缓存存根,提供了相关的基本操作
 /// </summary>
 /// <param name="expireTime">过期时间</param>
 /// <typeparam name="T">缓存类型</typeparam>
 public WeakCacheStub(DateTime expireTime)
 {
     _lease = new CacheLease(expireTime);
 }