Поделиться через


AtomicReferenceFieldUpdater.CompareAndSet(Object, Object, Object) Метод

Определение

Атомарно задает поле заданного объекта, управляемого этим обновлением, заданному обновленному значению, если текущее значение == ожидаемого значения.

[Android.Runtime.Register("compareAndSet", "(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z", "GetCompareAndSet_Ljava_lang_Object_Ljava_lang_Object_Ljava_lang_Object_Handler")]
public abstract bool CompareAndSet(Java.Lang.Object? obj, Java.Lang.Object? expect, Java.Lang.Object? update);
[<Android.Runtime.Register("compareAndSet", "(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z", "GetCompareAndSet_Ljava_lang_Object_Ljava_lang_Object_Ljava_lang_Object_Handler")>]
abstract member CompareAndSet : Java.Lang.Object * Java.Lang.Object * Java.Lang.Object -> bool

Параметры

obj
Object

Объект, поле которого необходимо задать условно

expect
Object

ожидаемое значение

update
Object

новое значение

Возвращаемое значение

true В случае успешного выполнения

Атрибуты

Комментарии

Атомарно задает поле заданного объекта, управляемого этим обновлением, заданному обновленному значению, если текущее значение == ожидаемого значения. Этот метод гарантированно является атомарным в отношении других вызовов compareAndSet и set, но не обязательно в отношении других изменений в поле.

Документация по Java для java.util.concurrent.atomic.AtomicReferenceFieldUpdater.compareAndSet(T, V, V).

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

Применяется к