public void AsyncTaskModule_Dispose_StopAsyncTaskAfterNumberOfRetry() { var test = new AsyncTaskModule(new QueueConfiguration(2, -1)); int value = 0; const string name1 = "test1"; var async1 = new AsyncDataPeriod(TimeSpan.FromMilliseconds(100), async => Interlocked.Increment(ref value), name1, 4); test.Start(); test.AddAsyncTask(async1, true); Thread.Sleep(TimeSpan.FromMilliseconds(800)); Assert.AreEqual(4, value); test.Dispose(); }
public void AsyncTaskModule_AddAsyncTask_AmountOfOperations_2Tasks() { var test = new AsyncTaskModule(new QueueConfiguration(2, -1)); int value = 0; const string name1 = "test1"; const string name2 = "test2"; var async1 = new AsyncDataPeriod(TimeSpan.FromMilliseconds(500), async => Interlocked.Increment(ref value), name1, -1); var async2 = new AsyncDataPeriod(TimeSpan.FromMilliseconds(500), async => Interlocked.Increment(ref value), name2, -1); test.Start(); test.AddAsyncTask(async1, true); test.AddAsyncTask(async2, true); Thread.Sleep(TimeSpan.FromMilliseconds(300)); Assert.AreEqual(2, value); Thread.Sleep(TimeSpan.FromMilliseconds(500)); Assert.AreEqual(4, value); test.Dispose(); }