Compartir a través de


CopyOnWriteArraySet Clase

Definición

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

[Android.Runtime.Register("java/util/concurrent/CopyOnWriteArraySet", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public class CopyOnWriteArraySet : Java.Util.AbstractSet, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable
[<Android.Runtime.Register("java/util/concurrent/CopyOnWriteArraySet", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type CopyOnWriteArraySet = class
    inherit AbstractSet
    interface ISerializable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Herencia
Atributos
Implementaciones

Comentarios

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones. Por lo tanto, comparte las mismas propiedades básicas: <ul><li>Es más adecuado para las aplicaciones en las que los tamaños establecidos por lo general permanecen pequeñas y de solo lectura operaciones mutativas de gran cantidad y necesita evitar interferencias entre subprocesos durante el recorrido. <li>Es seguro para subprocesos. <Las operaciones li>Mutative (add, set, remove, etc.) son costosas, ya que normalmente implican copiar toda la matriz subyacente. <li>Iterators no admiten la operación mutativa remove . <li>Traversal a través de iteradores es rápido y no puede encontrar interferencias de otros subprocesos. Los iteradores se basan en instantáneas inmutables de la matriz en el momento en que se construyeron los iteradores. </ul>

<b>Uso de ejemplo.</b> El siguiente boceto de código usa un conjunto de copia en escritura para mantener un conjunto de objetos Handler que realizan alguna acción tras las actualizaciones de estado.

{@code
            class Handler { void handle() { ... } }

            class X {
              private final CopyOnWriteArraySet<Handler> handlers
                = new CopyOnWriteArraySet<>();
              public void addHandler(Handler h) { handlers.add(h); }

              private long internalState;
              private synchronized void changeState() { internalState = ...; }

              public void update() {
                changeState();
                for (Handler handler : handlers)
                  handler.handle();
              }
            }}

Esta clase es miembro de Java Collections Framework.

Agregado en 1.5.

Documentación de Java para java.util.concurrent.CopyOnWriteArraySet.

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.

Constructores

CopyOnWriteArraySet()

Crea un conjunto vacío.

CopyOnWriteArraySet(ICollection)

Crea un conjunto que contiene todos los elementos de la colección especificada.

CopyOnWriteArraySet(IntPtr, JniHandleOwnership)

Constructor utilizado al crear representaciones administradas de objetos JNI; llamado por el tiempo de ejecución.

Propiedades

Class

Devuelve la clase en tiempo de ejecución de este Objectobjeto .

(Heredado de Object)
Handle

Identificador de la instancia de Android subyacente.

(Heredado de Object)
IsEmpty

Para agregar

(Heredado de AbstractCollection)
JniIdentityHashCode

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

(Heredado de Object)
JniPeerMembers

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

PeerReference

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

(Heredado de Object)
ThresholdClass

Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código.

ThresholdType

Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código.

Métodos

Add(Object)

Para agregar

(Heredado de AbstractCollection)
AddAll(ICollection)

Para agregar

(Heredado de AbstractCollection)
Clear()

Para agregar

(Heredado de AbstractCollection)
Clone()

Crea y devuelve una copia de este objeto.

(Heredado de Object)
Contains(Object)

Para agregar

(Heredado de AbstractCollection)
ContainsAll(ICollection)

Para agregar

(Heredado de AbstractCollection)
Dispose()

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

(Heredado de Object)
Dispose(Boolean)

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

(Heredado de Object)
Equals(Object)

Indica si algún otro objeto es "igual a" este.

(Heredado de Object)
ForEach(IConsumer)

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

GetHashCode()

Devuelve un valor de código hash del objeto.

(Heredado de Object)
Iterator()

Devuelve un iterador sobre los elementos contenidos en este conjunto en el orden en que se agregaron estos elementos.

JavaFinalize()

Lo llama el recolector de elementos no utilizados en un objeto cuando la recolección de elementos no utilizados determina que no hay más referencias al objeto .

(Heredado de Object)
Notify()

Activa un único subproceso que está esperando en el monitor de este objeto.

(Heredado de Object)
NotifyAll()

Activa todos los subprocesos que están esperando en el monitor de este objeto.

(Heredado de Object)
Remove(Object)

Para agregar

(Heredado de AbstractCollection)
RemoveAll(ICollection)

Para agregar

(Heredado de AbstractCollection)
RemoveIf(IPredicate)

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

RetainAll(ICollection)

Para agregar

(Heredado de AbstractCollection)
SetHandle(IntPtr, JniHandleOwnership)

Establece la propiedad Handle.

(Heredado de Object)
Size()

Devuelve el número de elementos de este conjunto.

Spliterator()

Devuelve un Spliterator elemento sobre los elementos de este conjunto en el orden en que se agregaron estos elementos.

ToArray()

Para agregar

(Heredado de AbstractCollection)
ToArray(Object[])

Para agregar

(Heredado de AbstractCollection)
ToArray<T>()

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

(Heredado de Object)
ToString()

Devuelve una representación de cadena del objeto.

(Heredado de Object)
UnregisterFromRuntime()

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

(Heredado de Object)
Wait()

Hace que el subproceso actual espere hasta que se despierta, normalmente por ser em notificado/em> o <em>interrumpido</em>.<><

(Heredado de Object)
Wait(Int64)

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real.

(Heredado de Object)
Wait(Int64, Int32)

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real.

(Heredado de Object)

Implementaciones de interfaz explícitas

IJavaPeerable.Disposed()

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

(Heredado de Object)
IJavaPeerable.DisposeUnlessReferenced()

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

(Heredado de Object)
IJavaPeerable.Finalized()

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

(Heredado de Object)
IJavaPeerable.JniManagedPeerState

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

(Heredado de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

(Heredado de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

(Heredado de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

(Heredado de Object)

Métodos de extensión

JavaCast<TResult>(IJavaObject)

Realiza una conversión de tipos comprobados en tiempo de ejecución de Android.

JavaCast<TResult>(IJavaObject)

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

GetJniTypeName(IJavaPeerable)

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

ToEnumerable(IIterable)

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

ToEnumerable<T>(IIterable)

que Set usa un elemento interno CopyOnWriteArrayList para todas sus operaciones.

Se aplica a