CopyOnWriteArrayList Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Variante thread-safe dont java.util.ArrayList toutes les opérations mutatives (add, setet ainsi de suite) sont implémentées en effectuant une nouvelle copie du tableau sous-jacent.
[Android.Runtime.Register("java/util/concurrent/CopyOnWriteArrayList", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public class CopyOnWriteArrayList : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, 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 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
- Héritage
- Attributs
- Implémente
Remarques
Variante thread-safe dont java.util.ArrayList toutes les opérations mutatives (add, setet ainsi de suite) sont implémentées en effectuant une nouvelle copie du tableau sous-jacent.
Cela est généralement trop coûteux, mais peut être <>plus</em> efficace que les alternatives lorsque les opérations traversées dépassent considérablement les mutations hors nombre, et est utile lorsque vous ne pouvez pas ou ne souhaitez pas synchroniser les traversées, mais besoin d’empêcher les interférences entre les threads simultanés. La méthode itérateur de style « snapshot » utilise une référence à l’état du tableau au point où l’itérateur a été créé. Ce tableau ne change jamais pendant la durée de vie de l’itérateur, donc l’interférence est impossible et l’itérateur est garanti de ne pas lever ConcurrentModificationException. L’itérateur ne reflète pas les ajouts, les suppressions ou les modifications apportées à la liste depuis la création de l’itérateur. Les opérations de modification d’élément sur les itérateurs eux-mêmes (remove, setet add) ne sont pas prises en charge. Ces méthodes lèvent UnsupportedOperationException.
Tous les éléments sont autorisés, y compris null.
Effets de cohérence de la mémoire : comme avec d’autres collections simultanées, les actions d’un thread avant de placer un objet dans un CopyOnWriteArrayList<i>happen-before</i> actions suite à l’accès ou à la suppression de cet élément dans CopyOnWriteArrayList un autre thread.
Cette classe est membre de l’infrastructure de collections Java.
Ajouté à la version 1.5.
Java documentation pour java.util.concurrent.CopyOnWriteArrayList.
Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.
Constructeurs
| Nom | Description |
|---|---|
| CopyOnWriteArrayList() |
Crée une liste vide. |
| CopyOnWriteArrayList(ICollection) |
Crée une liste contenant les éléments de la collection spécifiée, dans l’ordre dans lequel elles sont retournées par l’itérateur de la collection. |
| CopyOnWriteArrayList(IntPtr, JniHandleOwnership) |
Constructeur utilisé lors de la création de représentations managées d’objets JNI ; appelée par le runtime. |
| CopyOnWriteArrayList(Object[]) |
Crée une liste contenant une copie du tableau donné. |
Propriétés
| Nom | Description |
|---|---|
| Class |
Retourne la classe runtime de ce |
| First |
À ajouter |
| Handle |
Handle de l’instance Android sous-jacente. (Hérité de Object) |
| IsEmpty |
Retourne |
| JniIdentityHashCode |
Variante thread-safe dont |
| JniPeerMembers |
Variante thread-safe dont |
| Last |
À ajouter |
| PeerReference |
Variante thread-safe dont |
| ThresholdClass |
Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code. |
| ThresholdType |
Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code. |
Méthodes
| Nom | Description |
|---|---|
| Add(Int32, Object) |
Insère l’élément spécifié à la position spécifiée dans cette liste. |
| Add(Object) |
Ajoute l’élément spécifié à la fin de cette liste. |
| AddAll(ICollection) |
Ajoute tous les éléments de la collection spécifiée à la fin de cette liste, dans l’ordre dans lequel ils sont retournés par l’itérateur de la collection spécifiée. |
| AddAll(Int32, ICollection) |
Insère tous les éléments de la collection spécifiée dans cette liste, en commençant à la position spécifiée. |
| AddAllAbsent(ICollection) |
Ajoute tous les éléments de la collection spécifiée qui ne sont pas déjà contenus dans cette liste, à la fin de cette liste, dans l’ordre dans lequel ils sont retournés par l’itérateur de la collection spécifiée. |
| AddFirst(Object) |
À ajouter |
| AddIfAbsent(Object) |
Ajoute l’élément, s’il n’est pas présent. |
| AddLast(Object) |
À ajouter |
| Clear() |
Supprime tous les éléments de cette liste. |
| Clone() |
Retourne une copie superficielle de cette liste. |
| Contains(Object) |
Retourne |
| ContainsAll(ICollection) |
Retourne |
| Dispose() |
Variante thread-safe dont |
| Dispose(Boolean) |
Variante thread-safe dont |
| Equals(Object) |
Indique si un autre objet est « égal à » celui-ci. (Hérité de Object) |
| ForEach(IConsumer) |
Variante thread-safe dont |
| Get(Int32) |
À ajouter |
| GetHashCode() |
Retourne une valeur de code de hachage pour l'objet. (Hérité de Object) |
| IndexOf(Object, Int32) |
Retourne l’index de la première occurrence de l’élément spécifié dans cette liste, la recherche vers l’avant ou |
| IndexOf(Object) |
À ajouter |
| Iterator() |
Retourne un itérateur sur les éléments de cette liste dans une séquence appropriée. |
| JavaFinalize() |
Appelé par le garbage collector sur un objet lorsque le garbage collection détermine qu’il n’y a plus de références à l’objet. (Hérité de Object) |
| LastIndexOf(Object, Int32) |
Retourne l’index de la dernière occurrence de l’élément spécifié dans cette liste, en recherchant vers |
| LastIndexOf(Object) |
À ajouter |
| ListIterator() |
À ajouter |
| ListIterator(Int32) |
À ajouter |
| Notify() |
Réveille un thread unique qui attend le moniteur de cet objet. (Hérité de Object) |
| NotifyAll() |
Réveille tous les threads qui attendent le moniteur de cet objet. (Hérité de Object) |
| Remove(Int32) |
Supprime l’élément à la position spécifiée dans cette liste. |
| Remove(Object) |
Supprime la première occurrence de l’élément spécifié de cette liste, s’il est présent. |
| RemoveAll(ICollection) |
Supprime de cette liste tous ses éléments contenus dans la collection spécifiée. |
| RemoveFirst() |
À ajouter |
| RemoveIf(IPredicate) |
Variante thread-safe dont |
| RemoveLast() |
À ajouter |
| ReplaceAll(IUnaryOperator) |
Variante thread-safe dont |
| RetainAll(ICollection) |
Conserve uniquement les éléments de cette liste contenus dans la collection spécifiée. |
| Reversed() |
À ajouter |
| Set(Int32, Object) |
Remplace l’élément à la position spécifiée dans cette liste par l’élément spécifié. |
| SetHandle(IntPtr, JniHandleOwnership) |
Définit la propriété Handle. (Hérité de Object) |
| Size() |
Retourne le nombre d’éléments de cette liste. |
| Sort(IComparator) |
Variante thread-safe dont |
| Spliterator() |
Retourne un |
| SubList(Int32, Int32) |
Retourne une vue de la partie de cette liste entre |
| ToArray() |
Retourne un tableau contenant tous les éléments de cette liste dans une séquence appropriée (de premier à dernier élément). |
| ToArray(Object[]) |
Retourne un tableau contenant tous les éléments de cette liste dans une séquence appropriée (de premier à dernier élément) ; le type d’exécution du tableau retourné est celui du tableau spécifié. |
| ToArray<T>() |
Variante thread-safe dont |
| ToString() |
Retourne une représentation de chaîne de l'objet. (Hérité de Object) |
| UnregisterFromRuntime() |
Variante thread-safe dont |
| Wait() |
Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti par em ou><em>interrompu</em>.<> (Hérité de Object) |
| Wait(Int64, Int32) |
Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée. (Hérité de Object) |
| Wait(Int64) |
Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée. (Hérité de Object) |
Implémentations d’interfaces explicites
| Nom | Description |
|---|---|
| IJavaPeerable.Disposed() |
Variante thread-safe dont |
| IJavaPeerable.DisposeUnlessReferenced() |
Variante thread-safe dont |
| IJavaPeerable.Finalized() |
Variante thread-safe dont |
| IJavaPeerable.JniManagedPeerState |
Variante thread-safe dont |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Variante thread-safe dont |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Variante thread-safe dont |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Variante thread-safe dont |
Méthodes d’extension
| Nom | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtient le nom JNI du type de l’instance |
| JavaAs<TResult>(IJavaPeerable) |
Essayez de forcer |
| JavaCast<TResult>(IJavaObject) |
Effectue une conversion de type vérifiée par le runtime Android. |
| JavaCast<TResult>(IJavaObject) |
Variante thread-safe dont |
| ToEnumerable(IIterable) |
Variante thread-safe dont |
| ToEnumerable<T>(IIterable) |
Variante thread-safe dont |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Essayez de forcer |