public void LockTestLoop() { const int looNb = 1000000; _spinLockTest1Counter = 0; var mySpinLock = new SpinLock(); //var mySpinLock = new NoLock(); // fails with NoLock for (var i = 0; i < looNb; i++) { InnerTest(mySpinLock); } int j; for (j = 0; j < 10000; j++) { if (_spinLockTest1Counter == looNb) { break; } Thread.Sleep(1); } Console.WriteLine("Main thread waited {0} ms", j.ToString()); Assert.IsTrue(_spinLockTest1Counter == looNb); }
public void LockTestLoop() { const int looNb = 1000000; _spinLockTest1Counter = 0; var mySpinLock = new SpinLock(); //var mySpinLock = new NoLock(); // fails with NoLock for (var i = 0; i < looNb; i++) InnerTest(mySpinLock); int j; for (j = 0; j < 10000; j++ ) { if (_spinLockTest1Counter == looNb) break; Thread.Sleep(1); } Console.WriteLine("Main thread waited {0} ms", j.ToString()); Assert.IsTrue(_spinLockTest1Counter == looNb); }