Java中C#鎖定的等價物?Java中C#鎖定的等價物?
例如:
public int Next() {
lock (this) {
return NextUnsynchronized();
}
}
我如何端口這個C#方法的Java?
Java中C#鎖定的等價物?Java中C#鎖定的等價物?
例如:
public int Next() {
lock (this) {
return NextUnsynchronized();
}
}
我如何端口這個C#方法的Java?
public int Next() {
synchronized (this) {
return NextUnsynchronized();
}
}
就是這樣。接下來的代碼更好。
public synchronized int Next() {
return NextUnsynchronized();
}
這將是最好不要鎖定'this'在大多數情況下...... –
同步方法似乎是一個不錯的解決方案! – user3111311
@ user3111311請選擇answer> o < – ikh
java.util.concurrent.locks.Lock
lock.lock();
int newCount = ++count;
lock.unlock();
除非你需要嘗試/最後,並使用'synchronized'在這裏更接近...... –
在你的例子中顯然不需要,但在一般情況下,你應該寫{try} finally {lock.unlock ();} –
http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/locks/Lock.html – 0x90