同步我遇到類似於下面的代碼幾次與虛擬對象,而不是這個
class Foo {
private Object lock = new Object();
public void doSomething() {
synchronized(lock) {
...
我很感興趣的是,爲什麼要創建,而不是寫synchronized(this)
的鎖對象?是否有共享鎖?我依稀記得,這是一個優化。真的嗎?另外,在某些情況下,是否有理由將鎖聲明爲final
?
這個問題是在這裏找到答案:http://stackoverflow.com/a/3369303/1343161 – Keppil