Tag: synchronized块

lockObject上的同步和使用此锁作为锁之间有什么区别?

我知道同步方法和同步块之间的区别,但我不确定关于同步块部分。 假设我有这个代码 class Test { private int x=0; private Object lockObject = new Object(); public void incBlock() { synchronized(lockObject) { x++; } System.out.println("x="+x); } public void incThis() { // same as synchronized method synchronized(this) { x++; } System.out.println("x="+x); } } 在这种情况下使用lockObject和使用这个锁作为区别? 对我来说似乎是一样的.. 当你决定使用同步块时,你如何决定哪个对象是锁?