public void Run() { try { barrier.Await(); long i = iters; int y = 0; int succ = 0; while (i > 0) { for (int k = 0; k < CASLoops.innerPerOuter; ++k) { int x = obj.get_Renamed(); int z = y + LoopHelpers.compute6(x); if (obj.compareAndSet(x, z)) { ++succ; } y = LoopHelpers.compute7(z); } i -= CASLoops.innerPerOuter; } CASLoops.sum.AddDeltaAndReturnPreviousValue(obj.get_Renamed()); CASLoops.successes.AddDeltaAndReturnPreviousValue(succ); barrier.Await(); } catch (System.Exception ie) { return; } }