我從一個開源項目中讀了一些有趣的代碼,但我並沒有真正理解它。使用ConcurrentHashMap來模擬鎖,是否確定安全?
下面的concurrentMapExample是一個java.util.concurrent.ConcurrentMap。 下面的代碼可以防止多個線程同時返回isLocked = true嗎?
public boolean tryLock()
{
isLocked = concurrentMapExample.putIfAbsent(key, "") == null;
return isLocked;
}
對我的答案有任何反饋?如果它幫助你,請記得接受它。 – Gray