import java.util.concurrent.CountDownLatch; public class MyTask implements Runnable{ private CountMonitor monitor; CountDownLatch latch; public MyTask(CountMonitor monitor, CountDownLatch latch){ this.monitor = monitor; this.latch = latch; } public void run(){ for(int i = 0; i<100; i++){ monitor.increment(); } System.out.println("Done! Shared counter is "+monitor.getCounter()); latch.countDown(); } }