您可以檢查此代碼是否會線程安全/替換同步的功能嗎?像限制訪問多個線程?替代Java中的「同步」關鍵字進行多線程
class CheckSynch{
public static booloean check=true;
public static void func() // I am trying to write alternative code for synchronized function
{
if(check) {
check=false;
//body of function
check=true;
notifyAll();
} else {
wait();
}
}
}
你的代碼示例很亂! – Rihards
相信我,您無需爲synchronized關鍵字編寫替代方案。有人比你更聰明,已經設計好了,沒有冒犯性。 –
這段代碼甚至不會運行,更不用說線程安全了。 wait/notify必須位於同步塊內,否則您無需等待或通知。 – Robin