Example #1
0
            private void Release()
            {
                _Operation  = null;
                _Collection = null;
                _Awaiter    = default;

                Waiters.Add(this);
            }
Example #2
0
            //****************************************

            internal static PeekTakeWaiter GetOrCreate(AsyncCollectionTakeAny <T> operation, AsyncCollection <T> collection)
            {
                if (!Waiters.TryTake(out var Waiter))
                {
                    Waiter = new PeekTakeWaiter();
                }

                Waiter._Operation  = operation;
                Waiter._Collection = collection;

                return(Waiter);
            }