/// <summary> /// 搜索树字典获取数据 /// </summary> /// <param name="dictionary">搜索树字典</param> /// <param name="skipCount">跳过记录数</param> /// <param name="getCount">获取记录数</param> /// <param name="parser">参数解析</param> internal SearchTreeDictionaryGetter(Cache.Value.SearchTreeDictionary <keyType, valueType> dictionary, int skipCount, int getCount, ref OperationParameter.NodeParser parser) { OnReturn = parser.OnReturn; cache = parser.Cache; this.dictionary = dictionary; this.skipCount = skipCount; this.getCount = getCount; parser.OnReturn = null; }
/// <summary> /// 缓存快照 /// </summary> /// <param name="cache">缓存管理</param> /// <param name="isLoadArraySize"></param> internal Cache(AutoCSer.CacheServer.CacheManager cache, bool isLoadArraySize) { if (cache.Array.Length != 0) { dataStructures = cache.DataStructures.Values .getLeftArray(value => new ServerDataStructure(value)) .GetSortDesc(value => value.Identity.Index); if (isLoadArraySize) { array = cache.Array.copy(); cache.FreeIndexs.SortDesc(); step = 1; } else { step = 2; } stream = new UnmanagedStream(64 << 10); } else { step = 4; } }
/// <summary> /// 异步操作 /// </summary> /// <param name="cache">缓存管理</param> /// <param name="buffer">操作数据缓冲区</param> /// <param name="onOperation">操作完成回调</param> internal OperationAsynchronous(AutoCSer.CacheServer.CacheManager cache, Buffer buffer, Func <AutoCSer.Net.TcpServer.ReturnValue <ReturnParameter>, bool> onOperation) { this.cache = cache; this.buffer = buffer; this.onOperation = onOperation; }
/// <summary> /// 缓存管理 TCP 服务器端同步调用 /// </summary> /// <param name="cache">缓存管理</param> /// <param name="type">调用类型</param> internal CacheManager(AutoCSer.CacheServer.CacheManager cache, CacheManagerServerCallType type) { this.cache = cache; this.type = type; }
/// <summary> /// 异步操作 /// </summary> /// <param name="cache">缓存管理</param> /// <param name="parameter">短路径操作参数</param> /// <param name="onOperation">操作完成回调</param> internal ShortPathOperationAsynchronous(AutoCSer.CacheServer.CacheManager cache, ref OperationParameter.ShortPathOperationNode parameter, Func <AutoCSer.Net.TcpServer.ReturnValue <ReturnParameter>, bool> onOperation) { this.cache = cache; this.parameter = parameter; this.onOperation = onOperation; }
/// <summary> /// 获取缓存数据 /// </summary> /// <param name="cache">缓存管理</param> /// <param name="onCache">获取缓存数据回调委托</param> internal GetCache(AutoCSer.CacheServer.CacheManager cache, Func <AutoCSer.Net.TcpServer.ReturnValue <CacheReturnParameter>, bool> onCache) { this.cache = cache; this.onCache = onCache; }