AtomicLong.GetAndAccumulate(Int64, ILongBinaryOperator) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Atomically updates (with memory effects as specified by VarHandle#compareAndSet
) the current value with the results of
applying the given function to the current and given values,
returning the previous value.
[Android.Runtime.Register("getAndAccumulate", "(JLjava/util/function/LongBinaryOperator;)J", "", ApiSince=24)]
public long GetAndAccumulate (long x, Java.Util.Functions.ILongBinaryOperator? accumulatorFunction);
[<Android.Runtime.Register("getAndAccumulate", "(JLjava/util/function/LongBinaryOperator;)J", "", ApiSince=24)>]
member this.GetAndAccumulate : int64 * Java.Util.Functions.ILongBinaryOperator -> int64
Parameters
- x
- Int64
the update value
- accumulatorFunction
- ILongBinaryOperator
a side-effect-free function of two arguments
Returns
the previous value
- Attributes
Remarks
Atomically updates (with memory effects as specified by VarHandle#compareAndSet
) the current value with the results of applying the given function to the current and given values, returning the previous value. The function should be side-effect-free, since it may be re-applied when attempted updates fail due to contention among threads. The function is applied with the current value as its first argument, and the given update as the second argument.
Added in 1.8.
Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.