public async Task StartupShutdownTest() { var processor = new AsyncListProcessor<AsyncListTestObject>(processItem); Assert.IsTrue(await processor.StartupAsync(), "Failed to startup list processor"); Assert.IsTrue(processor.IsRunning, "IsRunning was false after startup"); //Process some items var items = new List<AsyncListTestObject>(); for (int i = 0; i < 10; i++) { var item = new AsyncListTestObject(); items.Add(item); processor.Add(item); } Assert.IsTrue(Task.WaitAll(items.Select(item => item.Task).ToArray(), 10000), "Failed to process task lists"); await processor.ShutdownAsync(); Assert.IsFalse(processor.IsRunning, "IsRunning still true after shutdown"); }
static TraceQueue() { //Initialize our message queue messageQueue = new AsyncListProcessor <TraceMessage>(ProcessQueue, maxQueueCount: maxMessageQueueCount); Task t = messageQueue.StartupAsync(); }
static TraceQueue() { //Initialize our message queue messageQueue = new AsyncListProcessor<TraceMessage>(ProcessQueue, maxQueueCount: maxMessageQueueCount); Task t = messageQueue.StartupAsync(); }