public bool Completed(OutputAwaiter item, EventOutput data) { if (item.Completed(data)) { return(true); } return(false); }
public (int, TaskCompletionSource <EventOutput>) Create(EventInput input, Type[] resultType, int timeout = 1000 * 100) { int id = 0; long expiredTime; lock (this) { mID++; if (mID >= mEndID) { mID = mStartID; } id = mID; } expiredTime = EventCenter.Watch.ElapsedMilliseconds + timeout; var item = new OutputAwaiter(); item.ID = id; mAwaiterItemGroup.Set(item.ID, item); return(id, item.Create(expiredTime)); }
public void Set(int id, OutputAwaiter item) { mItems[id] = item; }
public void Set(int id, OutputAwaiter item) { mGroups[id % Groups].Set(id, item); }