Delete LockStriped.java
This commit is contained in:
parent
1470deb187
commit
52608c32cb
@ -1,47 +0,0 @@
|
||||
package com.baeldung.concurrent.lock;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.locks.Lock;
|
||||
|
||||
import com.google.common.base.Supplier;
|
||||
import com.google.common.util.concurrent.Striped;
|
||||
|
||||
public class LockStriped extends ConcurrentAccessMap {
|
||||
Striped<Lock> lock;
|
||||
|
||||
public LockStriped(Map<String, String> map) {
|
||||
super(map);
|
||||
lock = getStripedLock();
|
||||
}
|
||||
|
||||
private Striped<Lock> getStripedLock() {
|
||||
Striped<Lock> map = Striped.lock(BUCKETS);
|
||||
return map;
|
||||
}
|
||||
|
||||
protected Supplier<?> putSupplier(int x) {
|
||||
return (()-> {
|
||||
Lock currentLock = lock.get("key" + x);
|
||||
boolean done = false;
|
||||
while(!done) {
|
||||
done = currentLock.tryLock();
|
||||
}
|
||||
map.put("key" + x, "value" + x);
|
||||
currentLock.unlock();
|
||||
return null;
|
||||
});
|
||||
}
|
||||
|
||||
protected Supplier<?> getSupplier(int x) {
|
||||
return (()-> {
|
||||
Lock currentLock = lock.get("key" + x);
|
||||
boolean done = false;
|
||||
while(!done) {
|
||||
done = currentLock.tryLock();
|
||||
}
|
||||
map.get("key" + x);
|
||||
currentLock.unlock();
|
||||
return null;
|
||||
});
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user