TaskQueueManager.setMaximumThreadCount(QUEUE_NAME,1);
TaskQueueManager.setMaximumStagePoolThreadCount(QUEUE_NAME,1);
//Allow some time to bring the thread count back down
stopWatch.block(500);
//Cancel by Task
BaseChain task1 = new MeanwhileTest.TimerTask(500L);
BaseChain task2 = new MeanwhileTest.TimerTask(500L);
BaseChain task3 = new MeanwhileTest.TimerTask(500L);
BaseChain task4 = new MeanwhileTest.TimerTask(500L);
BaseChain task5 = new MeanwhileTest.TimerTask(500L);
task2.chain(task3);
Stage stage1 = new Stage();
stage1.stage(task1);
Stage stage2 = new Stage();
stage2.stage(task2);