private static final class AggregateFutureState.SafeAtomicHelper extends AggregateFutureState.AtomicHelper
Modifier and Type | Field and Description |
---|---|
(package private) java.util.concurrent.atomic.AtomicIntegerFieldUpdater<AggregateFutureState<?>> |
remainingCountUpdater |
(package private) java.util.concurrent.atomic.AtomicReferenceFieldUpdater<AggregateFutureState<?>,java.util.Set<java.lang.Throwable>> |
seenExceptionsUpdater |
Constructor and Description |
---|
SafeAtomicHelper(java.util.concurrent.atomic.AtomicReferenceFieldUpdater seenExceptionsUpdater,
java.util.concurrent.atomic.AtomicIntegerFieldUpdater remainingCountUpdater) |
Modifier and Type | Method and Description |
---|---|
(package private) void |
compareAndSetSeenExceptions(AggregateFutureState<?> state,
java.util.Set<java.lang.Throwable> expect,
java.util.Set<java.lang.Throwable> update)
Atomic compare-and-set of the
AggregateFutureState.seenExceptions field. |
(package private) int |
decrementAndGetRemainingCount(AggregateFutureState<?> state)
Atomic decrement-and-get of the
AggregateFutureState.remaining field. |
final java.util.concurrent.atomic.AtomicReferenceFieldUpdater<AggregateFutureState<?>,java.util.Set<java.lang.Throwable>> seenExceptionsUpdater
final java.util.concurrent.atomic.AtomicIntegerFieldUpdater<AggregateFutureState<?>> remainingCountUpdater
SafeAtomicHelper(java.util.concurrent.atomic.AtomicReferenceFieldUpdater seenExceptionsUpdater, java.util.concurrent.atomic.AtomicIntegerFieldUpdater remainingCountUpdater)
void compareAndSetSeenExceptions(AggregateFutureState<?> state, @CheckForNull java.util.Set<java.lang.Throwable> expect, java.util.Set<java.lang.Throwable> update)
AggregateFutureState.AtomicHelper
AggregateFutureState.seenExceptions
field.compareAndSetSeenExceptions
in class AggregateFutureState.AtomicHelper
int decrementAndGetRemainingCount(AggregateFutureState<?> state)
AggregateFutureState.AtomicHelper
AggregateFutureState.remaining
field.decrementAndGetRemainingCount
in class AggregateFutureState.AtomicHelper