[Dubbo-4323]fix use AtomicInteger instead of volatile to inc (#4324)

Signed-off-by: slievrly <slievrly@163.com>
This commit is contained in:
jimin 2019-06-18 11:04:29 +08:00 committed by Xiaojie Li
parent 6f3a05ca82
commit 041a6addc1
1 changed files with 3 additions and 2 deletions

View File

@ -22,6 +22,7 @@ import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicLong;
/**
@ -40,7 +41,7 @@ public class ExpiringMap<K, V> implements Map<K, V> {
*/
private static final int DEFAULT_EXPIRATION_INTERVAL = 1;
private static volatile int expireCount = 1;
private static AtomicInteger expireCount = new AtomicInteger(1);
private final ConcurrentHashMap<K, ExpiryObject> delegateMap;
@ -263,7 +264,7 @@ public class ExpiringMap<K, V> implements Map<K, V> {
}
public ExpireThread() {
expirerThread = new Thread(this, "ExpiryMapExpire-" + expireCount++);
expirerThread = new Thread(this, "ExpiryMapExpire-" + expireCount.getAndIncrement());
expirerThread.setDaemon(true);
}