本文整理了Java中java.util.concurrent.ConcurrentSkipListMap.higherEntry()
方法的一些代码示例,展示了ConcurrentSkipListMap.higherEntry()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ConcurrentSkipListMap.higherEntry()
方法的具体详情如下:
包路径:java.util.concurrent.ConcurrentSkipListMap
类名称:ConcurrentSkipListMap
方法名:higherEntry
[英]Returns a key-value mapping associated with the least key strictly greater than the given key, or null if there is no such key. The returned entry does not support the Entry.setValue method.
[中]返回与严格大于给定键的最小键关联的键值映射,如果没有这样的键,则返回null。返回的条目不支持该条目。设置值方法。
代码示例来源:origin: co.paralleluniverse/galaxy
private Node getNextNode(String node) {
assert ordered;
synchronized (nodes) {
final Map.Entry<String, Node> entry = nodes.higherEntry(node);
return (entry != null ? entry.getValue() : null);
}
}
代码示例来源:origin: the8472/mldht
public List<KBucketEntry> get(Key target, int targetSize)
{
ArrayList<KBucketEntry> closestSet = new ArrayList<>(2 * targetSize);
Map.Entry<Key, CacheBucket> ceil = cache.ceilingEntry(target);
Map.Entry<Key, CacheBucket> floor = cache.floorEntry(target);
do
{
if(floor != null)
{
closestSet.addAll(floor.getValue().entries);
floor = cache.lowerEntry(floor.getKey());
}
if(ceil != null)
{
closestSet.addAll(ceil.getValue().entries);
ceil = cache.higherEntry(ceil.getKey());
}
} while (closestSet.size() / 2 < targetSize && (floor != null || ceil != null));
return closestSet;
}
代码示例来源:origin: limeng32/mybatis.flying
private void observerMethodsFission(ConcurrentSkipListMap<Class<?>, Set<Method>> observerMethodMap,
Entry<Class<?>, Set<Method>> currentE, ConcurrentSkipListMap<Class<?>, Set<Method>> observerMethodMapNew) {
if (observerMethodMap.size() != 0) {
if (currentE == null) {
currentE = observerMethodMap.firstEntry();
}
observerMethodMapNew.put(currentE.getKey(), currentE.getValue());
observerMethodsFissionFission(observerMethodMap, observerMethodMapNew);
Entry<Class<?>, Set<Method>> nextE = observerMethodMap.higherEntry(currentE.getKey());
if (nextE != null) {
observerMethodsFission(observerMethodMap, nextE, observerMethodMapNew);
}
}
}
代码示例来源:origin: cinchapi/concourse
@Override
public java.util.Map.Entry<K, V> higherEntry(K key) {
long[] stamps = grabAllSegmentWriteLocks();
try {
sort();
return sorted.higherEntry(key);
}
finally {
releaseSegmentLocks(stamps);
}
}
代码示例来源:origin: indeedeng/lsmtree
@Override
protected Entry<K, V> computeNext() {
final Map.Entry<K, Object> entry;
if (!initialized) {
initialized = true;
if (start == null) {
entry = map.firstEntry();
} else if (startInclusive) {
entry = map.ceilingEntry(start);
} else {
entry = map.higherEntry(start);
}
} else {
entry = map.higherEntry(key);
}
if (entry == null) {
return endOfData();
}
key = entry.getKey();
final Object value = entry.getValue();
if (value == deleted) return Entry.createDeleted(key);
return Entry.create(key, (V)value);
}
};
代码示例来源:origin: the8472/mldht
entry = cache.higherEntry(current.prefix);
if(entry == null)
return;
代码示例来源:origin: addthis/hydra
/**
* Return true if the page was evicted from the cache
*
* @return true if the page was evicted from the cache
*/
protected boolean removePageFromCache(K targetKey) {
assert (!targetKey.equals(negInf));
Page<K, V> currentPage;
Map.Entry<K, Page<K, V>> prevEntry, currentEntry;
prevEntry = getCache().lowerEntry(targetKey);
currentEntry = getCache().higherEntry(prevEntry.getKey());
if (currentEntry != null) {
currentPage = currentEntry.getValue();
int compareKeys = compareKeys(targetKey, currentPage.getFirstKey());
if (compareKeys < 0) {
return false;
} else if (compareKeys == 0 && currentPage.keys() == null &&
currentPage.getState() == ExternalMode.DISK_MEMORY_IDENTICAL) {
currentPage.setState(ExternalMode.MEMORY_EVICTED);
getCache().remove(targetKey);
cacheSize.getAndDecrement();
return true;
}
}
return false;
}
代码示例来源:origin: co.paralleluniverse/galaxy
private void nodeRemoved(String name) {
try {
boolean _doneInit;
final Node node;
Node previous = null, next = null;
synchronized (nodes) {
while (!doneInit)
nodes.wait();
if (ordered) {
previous = value(nodes.lowerEntry(name));
next = value(nodes.higherEntry(name));
}
node = nodes.remove(name);
_doneInit = this.doneInit;
}
if (node.isComplete()) {
for (Listener listener : listeners)
listener.nodeChildDeleted(branchRoot, name);
}
if (ordered) {
if (_doneInit && next != null && (previous == null || previous.isComplete()))
next.predecessorsComplete();
}
} catch (InterruptedException e) {
throw new RuntimeException();
}
}
代码示例来源:origin: addthis/hydra
Map.Entry<K, Page<K, V>> currentEntry = getCache().higherEntry(prevKey);
代码示例来源:origin: addthis/hydra
do {
writeUnlockAndNull(next);
Map.Entry<K, Page<K, V>> higherEntry = getCache().higherEntry(current.getFirstKey());
if (higherEntry == null) {
break findnext;
内容来源于网络,如有侵权,请联系作者删除!