public void DoTest() { _firstTestCounter = new CounterContainer(); _errorTestCounter = new CounterContainer(); var tt = new TestThreads(false, FirstTest, 1); tt.RunParallel(100); while (_firstTestCounter.Counter < 100) { Thread.Sleep(10); } Assert.AreEqual(100, _firstTestCounter.Counter); tt.Terminate(); }
public void DoTestMultiWithPar() { _firstTestCounter = new CounterContainer(); _errorTestCounter = new CounterContainer(); var tt = new TestThreads(false, SecondTest, 10); tt.RunParallel(1000, 2); while (_firstTestCounter.Counter < 1000 && _errorTestCounter.Counter==0) { Thread.Sleep(10); } Assert.AreEqual(0, _errorTestCounter.Counter); Assert.AreEqual(1000, _firstTestCounter.Counter); tt.Terminate(); }
public void DoTestMulti() { const int iterations = 10000; _firstTestCounter = new CounterContainer(); _errorTestCounter = new CounterContainer(); var tt = new TestThreads(false, FirstTest, 100); tt.RunParallel(iterations); while (_firstTestCounter.Counter < iterations) { Thread.Sleep(10); } Assert.AreEqual(iterations, _firstTestCounter.Counter); tt.Terminate(); }
public void DoTestMultiWithParAndReadingThread() { const int iterations = 10000; var lfq = new LockFreeQueue<int>(); _sendCounter = new CounterContainer(); _firstTestCounter = new CounterContainer(); _errorTestCounter = new CounterContainer(); var ttr = new TestThreads(false, ThirdTestReader, 5); ttr.RunParallel(iterations, lfq, true); var tts = new TestThreads(false, ThirdTestSender, 5); tts.RunParallel(iterations, lfq); while (_firstTestCounter.Counter < (iterations-1) && _errorTestCounter.Counter == 0) { Thread.Sleep(10); } Assert.AreEqual(0, _errorTestCounter.Counter); Assert.AreEqual(iterations, _sendCounter.Counter); Assert.AreEqual(iterations-1, _firstTestCounter.Counter); tts.Terminate(); ttr.Terminate(); }