Share via


AtomicReferenceArray 类

定义

对象引用的数组,其中元素可以原子方式更新。

[Android.Runtime.Register("java/util/concurrent/atomic/AtomicReferenceArray", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public class AtomicReferenceArray : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable
[<Android.Runtime.Register("java/util/concurrent/atomic/AtomicReferenceArray", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type AtomicReferenceArray = class
    inherit Object
    interface ISerializable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
继承
AtomicReferenceArray
属性
实现

注解

对象引用的数组,其中元素可以原子方式更新。 有关原子访问的属性的说明, VarHandle 请参阅规范。

在 1.5 中添加。

java.util.concurrent.atomic.AtomicReferenceArrayJava 文档。

此页面的部分内容是基于 创建和共享的工作进行的修改,并根据 署名许可中所述的术语使用。

构造函数

AtomicReferenceArray(Int32)

创建给定长度的新 AtomicReferenceArray,所有元素最初均为 null。

AtomicReferenceArray(IntPtr, JniHandleOwnership)

创建 JNI 对象的托管表示形式时使用的构造函数;由运行时调用。

AtomicReferenceArray(Object[])

创建一个新的 AtomicReferenceArray,其长度与给定数组以及从中复制的所有元素相同。

属性

Class

返回此 Object的运行时类。

(继承自 Object)
Handle

基础 Android 实例的句柄。

(继承自 Object)
JniIdentityHashCode

对象引用的数组,其中元素可以原子方式更新。

(继承自 Object)
JniPeerMembers

对象引用的数组,其中元素可以原子方式更新。

PeerReference

对象引用的数组,其中元素可以原子方式更新。

(继承自 Object)
ThresholdClass

此 API 支持 Mono for Android 基础结构,不应直接从代码使用。

ThresholdType

此 API 支持 Mono for Android 基础结构,不应直接从代码使用。

方法

AccumulateAndGet(Int32, Object, IBinaryOperator)

使用指定的内存效果以原子方式更新 (,) VarHandle#compareAndSet 索引 i 处的元素,并将给定函数应用于当前和给定值的结果,并返回更新的值。

Clone()

创建并返回此对象的副本。

(继承自 Object)
CompareAndExchange(Int32, Object, Object)

如果元素的当前值(称为 em 见证值</em== expectedValue>),则以原子方式将索引newValuei处的元素设置为 ,内存效果由 VarHandle#compareAndExchange指定。><

CompareAndExchangeAcquire(Int32, Object, Object)

如果元素的当前值(称为 em 见证值</em== expectedValue>),则以原子方式将索引newValuei处的元素设置为 ,内存效果由 VarHandle#compareAndExchangeAcquire指定。><

CompareAndExchangeRelease(Int32, Object, Object)

如果元素的当前值(称为 em 见证值</em== expectedValue>),则以原子方式将索引newValuei处的元素设置为 ,内存效果由 VarHandle#compareAndExchangeRelease指定。><

CompareAndSet(Int32, Object, Object)

如果元素的当前值 == expectedValue,则以原子方式将 索引inewValue处的元素设置为 ,并具有 指定的VarHandle#compareAndSet内存效果。

Dispose()

对象引用的数组,其中元素可以原子方式更新。

(继承自 Object)
Dispose(Boolean)

对象引用的数组,其中元素可以原子方式更新。

(继承自 Object)
Equals(Object)

指示其他某个对象是否“等于”此对象。

(继承自 Object)
Get(Int32)

返回索引 i处的 元素的当前值,内存效果由 VarHandle#getVolatile指定。

GetAcquire(Int32)

返回索引 i处的 元素的当前值,内存效果由 VarHandle#getAcquire指定。

GetAndAccumulate(Int32, Object, IBinaryOperator)

通过 VarHandle#compareAndSet) 索引 i 处元素指定的内存效果以原子方式更新 (,并将给定函数应用于当前和给定值的结果,并返回上一个值。

GetAndSet(Int32, Object)

以原子方式将索引 i 处的 元素设置为 newValue ,并返回旧值,内存效果由 VarHandle#getAndSet指定。

GetAndUpdate(Int32, IUnaryOperator)

使用应用给定函数的结果(返回上一个值)以原子方式更新) 索引i处元素所指定的VarHandle#compareAndSet内存效果 (。

GetHashCode()

返回对象的哈希代码值。

(继承自 Object)
GetOpaque(Int32)

返回索引 i处的 元素的当前值,内存效果由 VarHandle#getOpaque指定。

GetPlain(Int32)

返回索引 i处的 元素的当前值,并具有读取的内存语义,就好像变量声明为非 。volatile

JavaFinalize()

当垃圾回收确定不再引用对象时,由对象上的垃圾回收器调用。

(继承自 Object)
LazySet(Int32, Object)

将 索引 i 处的 元素设置为 newValue,内存效果由 VarHandle#setRelease指定。

Length()

返回数组的长度。

Notify()

唤醒正在等待此对象的监视器的单个线程。

(继承自 Object)
NotifyAll()

唤醒正在等待此对象的监视器的所有线程。

(继承自 Object)
Set(Int32, Object)

将 索引 i 处的 元素设置为 newValue,内存效果由 VarHandle#setVolatile指定。

SetHandle(IntPtr, JniHandleOwnership)

设置 Handle 属性。

(继承自 Object)
SetOpaque(Int32, Object)

将 索引 i 处的 元素设置为 newValue,内存效果由 VarHandle#setOpaque指定。

SetPlain(Int32, Object)

将 索引 i 处的 元素设置为 newValue,其设置的内存语义就像变量声明为非volatile 变量和非final变量一样。

SetRelease(Int32, Object)

将 索引 i 处的 元素设置为 newValue,内存效果由 VarHandle#setRelease指定。

ToArray<T>()

对象引用的数组,其中元素可以原子方式更新。

(继承自 Object)
ToString()

返回对象的字符串表示形式。

(继承自 Object)
UnregisterFromRuntime()

对象引用的数组,其中元素可以原子方式更新。

(继承自 Object)
UpdateAndGet(Int32, IUnaryOperator)

通过应用给定函数(返回更新的值)) 索引i处元素所指定的VarHandle#compareAndSet内存效果以原子方式更新 (。

Wait()

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>。<>

(继承自 Object)
Wait(Int64)

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>,或直到经过一定数量的实时。<>

(继承自 Object)
Wait(Int64, Int32)

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>,或直到经过一定数量的实时。<>

(继承自 Object)
WeakCompareAndSet(Int32, Object, Object)

如果元素的当前值 == expectedValue,则可能会以原子方式将索引inewValue处的元素设置为 ,并且内存效果由 VarHandle#weakCompareAndSetPlain指定。

WeakCompareAndSetAcquire(Int32, Object, Object)

如果元素的当前值 == expectedValue,则可能会以原子方式将索引inewValue处的元素设置为 ,并且内存效果由 VarHandle#weakCompareAndSetAcquire指定。

WeakCompareAndSetPlain(Int32, Object, Object)

如果元素的当前值 == expectedValue,则可能会以原子方式将索引inewValue处的元素设置为 ,并且内存效果由 VarHandle#weakCompareAndSetPlain指定。

WeakCompareAndSetRelease(Int32, Object, Object)

如果元素的当前值 == expectedValue,则可能会以原子方式将索引inewValue处的元素设置为 ,并且内存效果由 VarHandle#weakCompareAndSetRelease指定。

WeakCompareAndSetVolatile(Int32, Object, Object)

如果元素的当前值 == expectedValue,则可能会以原子方式将索引inewValue处的元素设置为 ,并且内存效果由 VarHandle#weakCompareAndSet指定。

显式接口实现

IJavaPeerable.Disposed()

对象引用的数组,其中元素可以原子方式更新。

(继承自 Object)
IJavaPeerable.DisposeUnlessReferenced()

对象引用的数组,其中元素可以原子方式更新。

(继承自 Object)
IJavaPeerable.Finalized()

对象引用的数组,其中元素可以原子方式更新。

(继承自 Object)
IJavaPeerable.JniManagedPeerState

对象引用的数组,其中元素可以原子方式更新。

(继承自 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

对象引用的数组,其中元素可以原子方式更新。

(继承自 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

对象引用的数组,其中元素可以原子方式更新。

(继承自 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

对象引用的数组,其中元素可以原子方式更新。

(继承自 Object)

扩展方法

JavaCast<TResult>(IJavaObject)

执行 Android 运行时检查的类型转换。

JavaCast<TResult>(IJavaObject)

对象引用的数组,其中元素可以原子方式更新。

GetJniTypeName(IJavaPeerable)

对象引用的数组,其中元素可以原子方式更新。

适用于