CopyOnWriteArrayList Clase

Definición

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

[Android.Runtime.Register("java/util/concurrent/CopyOnWriteArrayList", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public class CopyOnWriteArrayList : Java.Lang.Object, IDisposable, Java.IO.ISerializable, Java.Lang.ICloneable, Java.Util.IList, Java.Util.IRandomAccess
[<Android.Runtime.Register("java/util/concurrent/CopyOnWriteArrayList", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type CopyOnWriteArrayList = class
    inherit Object
    interface ISerializable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface ICloneable
    interface IList
    interface ICollection
    interface IIterable
    interface ISequencedCollection
    interface IRandomAccess
Herencia
CopyOnWriteArrayList
Atributos
Implementaciones

Comentarios

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

Esto suele ser demasiado costoso, pero puede ser <>más</em> eficiente que alternativas cuando las operaciones transversales superan enormemente las mutaciones de número, y es útil cuando no se puede o no desea sincronizar recorridos, pero es necesario impedir la interferencia entre subprocesos simultáneos. El método iterador de estilo "snapshot" usa una referencia al estado de la matriz en el punto en el que se creó el iterador. Esta matriz nunca cambia durante la vigencia del iterador, por lo que la interferencia es imposible y se garantiza que el iterador no inicie ConcurrentModificationException. El iterador no reflejará adiciones, eliminaciones ni cambios en la lista desde que se creó el iterador. No se admiten las operaciones de cambio de elementos en los propios iteradores (remove, sety add). Estos métodos inician UnsupportedOperationException.

Se permiten todos los elementos, incluido null.

Efectos de coherencia de memoria: al igual que con otras colecciones simultáneas, las acciones de un subproceso antes de colocar un objeto en una CopyOnWriteArrayList<acción i>before</i> posterior al acceso o eliminación de ese elemento de CopyOnWriteArrayList en otro subproceso.

Esta clase es miembro del marco de colecciones de Java.

Agregado en 1.5.

Java documentación para java.util.concurrent.CopyOnWriteArrayList.

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Constructores

Nombre Description
CopyOnWriteArrayList()

Crea una lista vacía.

CopyOnWriteArrayList(ICollection)

Crea una lista que contiene los elementos de la colección especificada, en el orden en que se devuelven mediante el iterador de la colección.

CopyOnWriteArrayList(IntPtr, JniHandleOwnership)

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

CopyOnWriteArrayList(Object[])

Crea una lista que contiene una copia de la matriz especificada.

Propiedades

Nombre Description
Class

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

(Heredado de Object)
First

Por agregar

Handle

Identificador de la instancia de Android subyacente.

(Heredado de Object)
IsEmpty

Devuelve true si esta lista no contiene elementos.

JniIdentityHashCode

Obtiene el código hash de identidad asignado a este Java del mismo nivel por el tiempo de ejecución de interoperabilidad.

(Heredado de Object)
JniManagedPeerState

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

(Heredado de JavaObject)
JniPeerMembers

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

Last

Por agregar

PeerReference

Obtiene la referencia de objeto JNI para este Java del mismo nivel.

(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

Nombre Description
Add(Int32, Object)

Inserta el elemento especificado en la posición especificada de esta lista.

Add(Object)

Anexa el elemento especificado al final de esta lista.

AddAll(ICollection)

Anexa todos los elementos de la colección especificada al final de esta lista, en el orden en que devuelven el iterador de la colección especificada.

AddAll(Int32, ICollection)

Inserta todos los elementos de la colección especificada en esta lista, empezando por la posición especificada.

AddAllAbsent(ICollection)

Anexa todos los elementos de la colección especificada que aún no están incluidos en esta lista, al final de esta lista, en el orden en que devuelven el iterador de la colección especificada.

AddFirst(Object)

Por agregar

AddIfAbsent(Object)

Anexa el elemento, si no está presente.

AddLast(Object)

Por agregar

Clear()

Quita todos los elementos de esta lista.

Clone()

Devuelve una copia superficial de esta lista.

Construct(JniObjectReference, JniObjectReferenceOptions)

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

(Heredado de JavaObject)
Contains(Object)

Devuelve true si esta lista contiene el elemento especificado.

ContainsAll(ICollection)

Devuelve true si esta lista contiene todos los elementos de la colección especificada.

Dispose()

Libera los recursos mantenidos por este Java del mismo nivel.

(Heredado de Object)
Dispose(Boolean)

Libera los recursos mantenidos por este Java del mismo nivel.

(Heredado de Object)
DisposeUnlessReferenced()

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

(Heredado de JavaObject)
Equals(Object)

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

(Heredado de JavaObject)
Equals(Object)

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

(Heredado de Object)
ForEach(IConsumer)

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

Get(Int32)

Por agregar

GetHashCode()

Devuelve un valor de código hash para el objeto .

(Heredado de Object)
IndexOf(Object, Int32)

Devuelve el índice de la primera aparición del elemento especificado en esta lista, la búsqueda de reenvíos desde indexo devuelve -1 si no se encuentra el elemento.

IndexOf(Object)

Por agregar

Iterator()

Devuelve un iterador sobre los elementos de esta lista en una secuencia adecuada.

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)
LastIndexOf(Object, Int32)

Devuelve el índice de la última aparición del elemento especificado en esta lista, la búsqueda hacia atrás desde indexo devuelve -1 si no se encuentra el elemento.

LastIndexOf(Object)

Por agregar

ListIterator()

Por agregar

ListIterator(Int32)

Por agregar

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(Int32)

Quita el elemento en la posición especificada de esta lista.

Remove(Object)

Quita la primera aparición del elemento especificado de esta lista, si está presente.

RemoveAll(ICollection)

Quita de esta lista todos sus elementos contenidos en la colección especificada.

RemoveFirst()

Por agregar

RemoveIf(IPredicate)

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

RemoveLast()

Por agregar

ReplaceAll(IUnaryOperator)

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

RetainAll(ICollection)

Conserva solo los elementos de esta lista que se encuentran en la colección especificada.

Reversed()

Por agregar

Set(Int32, Object)

Reemplaza el elemento en la posición especificada de esta lista por el elemento especificado.

SetHandle(IntPtr, JniHandleOwnership)

Establece la propiedad Handle.

(Heredado de Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

(Heredado de JavaObject)
Size()

Devuelve el número de elementos en esta lista.

Sort(IComparator)

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

Spliterator()

Devuelve un elemento Spliterator sobre los elementos de esta lista.

SubList(Int32, Int32)

Devuelve una vista de la parte de esta lista entre fromIndex, ambos incluidos y toIndex, exclusivos.

ToArray()

Devuelve una matriz que contiene todos los elementos de esta lista en una secuencia adecuada (del primer al último elemento).

ToArray(Object[])

Devuelve una matriz que contiene todos los elementos de esta lista en una secuencia adecuada (del primer al último elemento); el tipo en tiempo de ejecución de la matriz devuelta es el de la matriz especificada.

ToArray<T>()

Crea una matriz administrada a partir de este contenedor de matriz Java.

(Heredado de Object)
ToString()

Devuelve una representación de cadena del objeto .

(Heredado de Object)
UnregisterFromRuntime()

Anula el registro de este Java del mismo nivel del tiempo de ejecución de interoperabilidad.

(Heredado de Object)
Wait()

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

(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)
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)

Implementaciones de interfaz explícitas

Nombre Description
IJavaPeerable.Disposed()

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

(Heredado de JavaObject)
IJavaPeerable.Finalized()

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

(Heredado de JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

(Heredado de JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

(Heredado de JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

(Heredado de JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

(Heredado de JavaObject)
IJavaPeerable.UnregisterFromRuntime()

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

Métodos de extensión

Nombre Description
GetJniTypeName(IJavaPeerable)

Obtiene el nombre JNI del tipo de la instancia self.

JavaAs<TResult>(IJavaPeerable)

Intente coerción self para escribir TResult, comprobando que la coerción es válida en el lado de Java.

JavaCast<TResult>(IJavaObject)

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

JavaCast<TResult>(IJavaObject)

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

ToEnumerable(IIterable)

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

ToEnumerable<T>(IIterable)

Una variante segura para subprocesos de java.util.ArrayList en la que todas las operaciones mutativas (add, set, etc.) se implementan realizando una nueva copia de la matriz subyacente.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Intente coerción self para escribir TResult, comprobando que la coerción es válida en el lado de Java.

Se aplica a