這兩個代碼塊的行爲是否相同?您可能會認爲這些運行方法是從線程調用的。將方法同步或將同步塊添加到方法之間有區別嗎?
public synchronized void run() {
System.out.println("A thread is running.");
}
或者
static Object syncObject = new Object();
public void run() {
synchronized(syncObject) {
System.out.println("A thread is running.");
}
}
@ Eng.Fouad指出它們鎖定不同的對象。對? – Gray 2013-02-15 17:36:12
謝謝,在發帖前我沒有看到那篇文章(對不起)。 – user1420042 2013-02-15 17:38:31