public class SyncBlock { private long c1 = 0; private long c2 = 0; private Object lock1 = new Object(); private Object lock2 = new Object(); public void inc1() { synchronized(lock1) { while(true) { for(long i=0; i<999999999L; i++) ; System.out.println("Counter1: "+ ++c1); } } } public void inc2() { synchronized(lock2) { while(true) { for(long i=0; i<999999999L; i++) ; System.out.println("Counter2: "+ ++c2); } } } }