public async Task <Sender[]> After_Concurrent()
        {
            var generator = new MessageSenderLifeCycleManagerAsync(async(s, s1, arg3) =>
            {
                await Task.Yield();
                return(new Sender {
                    IsClosed = IsClosed
                });
            }, 8);

            var senders = new List <Task <Sender> >(8);

            for (int i = 0; i < 8; i++)
            {
                senders.Add(generator.Get($"entitypath-{i}", $"entitypath-{i}", $"entitypath-{i}"));
            }

            return(await Task.WhenAll(senders));
        }
        public async Task <List <Sender> > After_Sequential()
        {
            var generator = new MessageSenderLifeCycleManagerAsync(async(s, s1, arg3) =>
            {
                await Task.Yield();
                return(new Sender {
                    IsClosed = IsClosed
                });
            }, 8);

            var senders = new List <Sender>(8);

            for (int i = 0; i < 8; i++)
            {
                senders.Add(await generator.Get($"entitypath-{i}", $"entitypath-{i}", $"entitypath-{i}"));
            }

            return(senders);
        }