tests for proper concurrency and functionality of decrementandget . concode_field_sep Runnable mCommand concode_elem_sep long preTestValue concode_elem_sep Runnable getIncrementCommand concode_elem_sep Runnable getCommand concode_elem_sep Runnable decrementGetCommand concode_elem_sep Runnable incrementGetCommand concode_elem_sep long INITIAL_VALUE concode_elem_sep Runnable getDecrementCommand concode_elem_sep long mMaxIterations concode_elem_sep int numThreads concode_elem_sep CyclicBarrier mStartBarrier concode_elem_sep CountDownLatch mStopLatch concode_elem_sep long iterations concode_elem_sep SimpleAtomicLong mCounter concode_field_sep void multiGetAndIncrementTest concode_elem_sep void multiGetAndDecrementTest concode_elem_sep void multiThreadedTest concode_elem_sep void multiIncrementAndGetTest concode_elem_sep long getIterations concode_elem_sep void setUpBeforeClass concode_elem_sep void setUp concode_elem_sep void run concode_elem_sep void runThreads concode_elem_sep void multiGetTest
void function ( ) { runThreads ( decrementGetCommand ) ; assertEquals ( preTestValue - mMaxIterations * numThreads , mCounter . get ( ) ) ; }