private String tempFileDirectoryName() { return String.format("%s%03d", TEMPFILE_DIR_PREFIX, TEMP_FILE_SOURCE.getAndUpdate(incrementUntil (MAX_TEMP_FILE_SUFFIX))); }
public static int getAndIncrement(AtomicInteger i, int maxValue) { return i.getAndUpdate(prev -> { if (prev < maxValue) { return prev + 1; } else { return maxValue; } }); } }
public static int getAndIncrement(AtomicInteger i, int maxValue) { return i.getAndUpdate(prev -> { if (prev < maxValue) { return prev + 1; } else { return maxValue; } }); } }
public static int getAndDecrement(AtomicInteger i, int minValue) { return i.getAndUpdate(prev -> { if (prev > minValue) { return prev - 1; } else { return minValue; } }); }
public static int getAndDecrement(AtomicInteger i, int minValue) { return i.getAndUpdate(prev -> { if (prev > minValue) { return prev - 1; } else { return minValue; } }); }
public int next( ) { return incrementer.getAndUpdate( operand -> { operand++; if ( operand >= ceiling ) { operand = floor; } return operand; } ); } }
@Override public int takeBlock(ITreeIndexMetadataFrame metaFrame, int count) throws HyracksDataException { return currentPageId.getAndUpdate(operand -> operand + count) + 1; }
void scalePriority() { priority.getAndUpdate((p) -> p * ITEM_PRIORITY_SCALE_POWER); }
void scalePriority() { priority.getAndUpdate((p) -> p * ITEM_PRIORITY_SCALE_POWER); }
void scalePriority() { priority.getAndUpdate((p) -> p * ITEM_PRIORITY_SCALE_POWER); }
void scalePriority() { priority.getAndUpdate((p) -> p * ITEM_PRIORITY_SCALE_POWER); }
int getClientTransferId() { return clientTransferId.getAndUpdate(id -> (id + 1) & 0xFFFF); }
void scalePriority() { priority.getAndUpdate((p) -> p * ITEM_PRIORITY_SCALE_POWER); }
@Override public String next() { return items.get(index.getAndUpdate(updater)); } };
import akka.routing.Routee; import akka.routing.RoutingLogic; import scala.collection.immutable.IndexedSeq; import java.util.concurrent.atomic.AtomicInteger; public class CircularRoutingLogic implements RoutingLogic { final AtomicInteger cycler = new AtomicInteger(); @Override public Routee select(Object message, IndexedSeq<Routee> routees) { final int size = routees.size(); return size == 0 ? null : routees.apply(cycler.getAndUpdate(index -> ++index < size ? index : 0)); } }
@Override public String next() { return items.get(index.getAndUpdate(updater)); } };
private String decompile(String namespace, String classname) { int index = counter.intValue() % POOL_SIZE; counter.getAndUpdate(operand -> operand >= POOL_SIZE ? 0 : operand + 1); Decompiler d = decompilerPool.get(index < 0 ? 0 : index); if (d != null) { File dir = new File(root, namespace); File f = new File(dir, classname + ".class"); if (f.exists() && !f.canRead() && f.isDirectory()) { synchronized (d) { return d.decompile(dir, f); } } } return null; }
@Override public void meet(Service n) throws RuntimeException { final int checkpoint = counter.get(); n.visitChildren(this); int pp = counter.getAndIncrement(); PRIORITY_MAP_CACHE.put(new IdentityWrapper<>(n), pp); if (n == node) ret.set(pp); counter.getAndUpdate((int count) -> 2 * count - checkpoint + 1); //at least double the distance to have a space for service optimizations }
private void initVisibleCounter() { visibleChildren.getAndUpdate(operand -> { if (operand >= 0) { return operand; } int count = 0; for (MetricDir metricDir : getDirs().values()) { if (metricDir.visible()) { count++; } } for (MetricName metricName : getMetrics().values()) { if (metricName.visible()) { count++; } } return count; }); } }
@Test public void testSumNumbers() { final AtomicInteger counter = new AtomicInteger(1); final int result = TechAbilityAttachment.sumNumbers(a -> { assertEquals(attachment, a); return counter.getAndUpdate(i -> i * -10); }, "NamedAttachable{name=test}", mock(PlayerId.class), data); assertEquals(101, result); } }