public async Task CreateMessagesAndCancelNoDelay()
        {
            int messagesToCreate = 50000;
            int messageToCancel  = 1000;
            int delay            = 1;

            Resources.Shared.MessageList = new List <string>();
            IMultiple multiple = GetMultiple();

            IMultipleModel[] multipleModelsList =
            {
                new AddMessagesNoDelays(1, messagesToCreate, messageToCancel, delay),
                new AddMessagesNoDelays(2, messagesToCreate, messageToCancel, delay),
                new AddMessagesNoDelays(3, messagesToCreate, messageToCancel, delay),
                new AddMessagesNoDelays(4, messagesToCreate, messageToCancel, delay),
                new AddMessagesNoDelays(5, messagesToCreate, messageToCancel, delay),
                new AddMessagesNoDelays(6, messagesToCreate, messageToCancel, delay),
            };
            multiple.Run(multipleModelsList);
            await Task.Delay(1000);

            multiple.Dispose();
            await multiple.Wait();

            Assert.Equal(messageToCancel * multipleModelsList.Length, Resources.Shared.MessageList.Count);
            Assert.Equal((Resources.Shared.MessageList.Count / (double)(messagesToCreate * multipleModelsList.Length)), multiple.Progress());
        }