AtomicReferenceFieldUpdater.WeakCompareAndSet(Object, Object, Object) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Атомарно задает поле заданного объекта, управляемого этим методом обновления, заданное обновленное значение, если текущее значение ==
является ожидаемым.
[Android.Runtime.Register("weakCompareAndSet", "(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z", "GetWeakCompareAndSet_Ljava_lang_Object_Ljava_lang_Object_Ljava_lang_Object_Handler")]
public abstract bool WeakCompareAndSet (Java.Lang.Object? obj, Java.Lang.Object? expect, Java.Lang.Object? update);
[<Android.Runtime.Register("weakCompareAndSet", "(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z", "GetWeakCompareAndSet_Ljava_lang_Object_Ljava_lang_Object_Ljava_lang_Object_Handler")>]
abstract member WeakCompareAndSet : Java.Lang.Object * Java.Lang.Object * Java.Lang.Object -> bool
Параметры
- obj
- Object
Объект, поле которого устанавливается условно.
- expect
- Object
ожидаемое значение
- update
- Object
новое значение
Возвращаемое значение
true
При успешном выполнении
- Атрибуты
Комментарии
Атомарно задает поле заданного объекта, управляемого этим методом обновления, заданное обновленное значение, если текущее значение ==
является ожидаемым. Этот метод гарантированно будет атомарным по отношению к другим вызовам compareAndSet
и set
, но не обязательно по отношению к другим изменениям в поле.
Эта операция может завершиться сбоем и не предоставляет гарантий упорядочивания, поэтому лишь в редких случаях является подходящей альтернативой compareAndSet
.
Части этой страницы являются изменениями, основанными на работе, созданной и совместно используемой проектом и используемой в соответствии с условиями, Creative Commons 2.5 Attribution License Creative Commons 2.5 Attribution License.