Ejemplo n.º 1
0
        public static async Task <List <T> > ReadAllAsync <T>(this ReadableChannel <T> channel)
        {
            var list = new List <T>();

            while (await channel.WaitToReadAsync())
            {
                while (channel.TryRead(out var item))
                {
                    list.Add(item);
                }
            }

            // Manifest any error from channel.Completion (which should be completed now)
            await channel.Completion;

            return(list);
        }
Ejemplo n.º 2
0
 public override Task <bool> WaitAsync(CancellationToken cancellationToken)
 {
     return(_channel.WaitToReadAsync(cancellationToken));
 }