/// <summary> /// 用複合唯一索引查詢 /// </summary> /// <param name="collectionName"></param> /// <param name="uniqueName"></param> /// <param name="json"></param> /// <returns></returns> public ETTask <ComponentWithId> QueryByUnique(string collectionName, string uniqueName, string json) { ETTaskCompletionSource <ComponentWithId> tcs = new ETTaskCompletionSource <ComponentWithId>(); CacheQueryByUniqueTask cacheQueryByUniqueTask = ComponentFactory.Create <CacheQueryByUniqueTask, string, ETTaskCompletionSource <ComponentWithId> >(collectionName, tcs); cacheQueryByUniqueTask.UniqueName = uniqueName; cacheQueryByUniqueTask.Json = json; this.tasks[(int)((ulong)cacheQueryByUniqueTask.Id % taskCount)].Add(cacheQueryByUniqueTask); return(tcs.Task); }
public override void Awake(CacheQueryByUniqueTask self, string collectionName, ETTaskCompletionSource <ComponentWithId> tcs) { self.Tcs = tcs; self.CollectionName = collectionName; }