Ejemplo n.º 1
0
        private void OneProducer_OneConsumer_Chan(int capacity, int itemCount)
        {
            var chan     = new Chan <int>(capacity);
            var producer = Task.Run(() =>
            {
                foreach (var i in Enumerable.Range(0, itemCount))
                {
                    chan.Send(i);
                }
                chan.Close();
            });

            var consumer = Task.Run(() =>
            {
                foreach (var i in chan.Yield())
                {
                }
            });

            Task.WaitAll(producer, consumer);
        }