언어

AtomicIntegerFieldUpdater.GetAndAccumulate 메서드

정의

지정된 함수를 현재 및 지정된 값에 VarHandle#compareAndSet적용하여 이전 값을 반환한 결과로 이 업데이트자가 관리하는 지정된 개체의 필드를 원자성으로 업데이트합니다(지정된 메모리 효과 포함).

[Android.Runtime.Register("getAndAccumulate", "(Ljava/lang/Object;ILjava/util/function/IntBinaryOperator;)I", "", ApiSince=24)]
public int GetAndAccumulate(Java.Lang.Object? obj, int x, Java.Util.Functions.IIntBinaryOperator? accumulatorFunction);
[<Android.Runtime.Register("getAndAccumulate", "(Ljava/lang/Object;ILjava/util/function/IntBinaryOperator;)I", "", ApiSince=24)>]
member this.GetAndAccumulate : Java.Lang.Object * int * Java.Util.Functions.IIntBinaryOperator -> int

매개 변수

obj
Object

필드를 가져와서 설정할 개체입니다.

x
Int32

업데이트 값

accumulatorFunction
IIntBinaryOperator

두 인수의 부작용 없는 함수

반품

이전 값

특성

설명

지정된 함수를 현재 및 지정된 값에 VarHandle#compareAndSet적용하여 이전 값을 반환한 결과로 이 업데이트자가 관리하는 지정된 개체의 필드를 원자성으로 업데이트합니다(지정된 메모리 효과 포함). 스레드 간의 경합으로 인해 업데이트 시도가 실패할 때 다시 적용될 수 있으므로 함수는 부작용이 없어야 합니다. 함수는 현재 값을 첫 번째 인수로, 지정된 업데이트를 두 번째 인수로 적용합니다.

1.8에 추가되었습니다.

에 대한 java.util.concurrent.atomic.AtomicIntegerFieldUpdater.getAndAccumulate(T, int, java.util.function.IntBinaryOperator)Java 설명서

이 페이지의 일부는 만들고 공유한 작업을 기반으로 하며 에 설명된 조건에 따라 사용됩니다.

적용 대상