IBlockingDeque Interface

Définition

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

[Android.Runtime.Register("java/util/concurrent/BlockingDeque", "", "Java.Util.Concurrent.IBlockingDequeInvoker")]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public interface IBlockingDeque : IDisposable, Java.Interop.IJavaPeerable, Java.Util.Concurrent.IBlockingQueue, Java.Util.IDeque
[<Android.Runtime.Register("java/util/concurrent/BlockingDeque", "", "Java.Util.Concurrent.IBlockingDequeInvoker")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type IBlockingDeque = interface
    interface IBlockingQueue
    interface IQueue
    interface ICollection
    interface IIterable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface IDeque
Dérivé
Attributs
Implémente

Remarques

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

BlockingDeque les méthodes se présentent sous quatre formes, avec différentes façons de gérer les opérations qui ne peuvent pas être satisfaites immédiatement, mais peuvent être satisfaites à un moment donné dans le futur : l’une lève une exception, la seconde retourne une valeur spéciale ( null soit false, en fonction de l’opération), les troisièmes blocs du thread actuel indéfiniment jusqu’à ce que l’opération puisse réussir, et les quatrième blocs pour une limite de temps maximale donnée seulement avant d’abandonner. Ces méthodes sont résumées dans le tableau suivant :

<table class="plain">caption Summary of BlockingDeque methods</caption><tr><th id="First » colspan="5 »> First Element (Head)</th<>/tr tr><><tr/td<>>< th id="FThrow » style="font-weight :normal ; font-style : italique">Throws exception</th th><id="FValue » style="font-weight :normal ; font-style : italic">Special value</th th><id="FBlock » style="font-weight :>< normal; police-style : italique">Blocks</th th><id="FTimes » style="font-weight :normal ; police-style : italique"Times out</th<>/tr tr<><>th id="FInsert » style="text-align :left">Insert</th<>td headers=">First FInsert FThrow"<>#addFirst(Object) addFirst(e)/td td<>headers="First FInsert FValue"#offerFirst(Object) offerFirst(e)></td<>td headers="First FInsert FBlock"#putFirst(Object) putFirst(e)<>/td td><headers="First FInsert FTimes"><#offerFirst(Object, long, TimeUnit) offerFirst(e, time, unit)/td></tr tr><><th id="FRemove » style="text-align :left">Remove</th><td headers="First FRemove FThrow"/td td><headers="First FRemove FValue"#pollFirst() pollFirst()<>/td><headers="First FRemove FBlock"<>#takeFirst() takeFirst()/td td<>headers="First FRemove FTimes"#removeFirst() removeFirst()>>#pollFirst(long, TimeUnit) pollFirst(time, unit)<</td<<>> tr><tr th id="FExamine » style= » text-align :left">Examine</th<>td headers="First FExamine FThrow"><#getFirst() getFirst()/td<>td headers="First FExamine FValue"#peekFirst() peekFirst()<>/td td><headers="First FExamine FBlock » style="font-style :italic">not applicable/td td><headers="First FExamine FTimes » style="font-style :italic">not applicable<</td></tr tr>><<th id="Last » colspan="5 »> Last Element (Tail)</th<>/tr tr>><<td></td<>th id="LThrow » style="font-weight :normal ; police-style : italique">Throws exception</th th<>id="LValue » style="font-weight :normal ; font-style : italic">Special value</th th><id="LBlock » style="font-weight :normal ; font-style : italic">Blocks</th th><id="LTimes » style="font-weight :normal ; font-style : italique">Times out</th<>/tr><><th id="LInsert » style="text-align :left">Insert</th><td headers="Last LInsert LThrow"><#addLast(Object) addLast(e)/td td><headers="Last LInsert LValue"<#offerLast(Object) offerLast(e)>/td td<>headers="Last LInsert LBlock"><#putLast(Object) putLast(e)/td><headers="Last LInsert LTimes"<>#offerLast(Object, long, TimeUnit) offerLast(e, time, unit)/td tr><><><th id="LRemove » style="text-align :left"Remove/th><td headers="Last LRemove LThrow"/td td<>headers="Last LRemove LValue"><#pollLast() pollLast()/td td><headers="Last LRemove LBlock"/td td<>headers="Last LRemove LTimes"><>#pollLast(long, TimeUnit) pollLast(time, unit)#removeLast() removeLast()</td></tr><tr><th id="LExamine » style="text-align :left"<>>#takeLast() takeLast()Examine</th><><td headers="Last LExamine LThrow »>#getLast() getLast()</td><td headers="Last LExamine LValue">#peekLast() peekLast()</td td><headers="Last LExamine LBlock » style="font-style :italic">not applicable</td td<>headers="Last LExamine LTimes » style="font-style :italic">not applicable</td></tr></table>

Comme tout BlockingQueue, un BlockingDeque thread sécurisé, n’autorise pas les éléments Null et peut (ou non) être limité à la capacité.

Une BlockingDeque implémentation peut être utilisée directement en tant que FIFO BlockingQueue. Les méthodes héritées de l’interface BlockingQueue sont exactement équivalentes aux BlockingDeque méthodes indiquées dans le tableau suivant :

<table class="plain">caption Comparison of BlockingQueue and BlockingDeque methods</caption><tr><td/td>><< th id="BQueue »BlockingQueue> Method</th th><id="BDeque »> Equivalent BlockingDeque Method</th/tr tr><<>th>< id="Insert » rowspan="4 » style="text-align :left ; vertical-align :top">Insert</th th><id="add » style="font-weight :normal ; text-align :left »>><#add(Object) add(e)</th><td headers="Insert BDeque add"/td></tr tr><><th id="offer1 » style="font-weight :normal ; text-align :left"/<>th td headers="Insert BDeque offer1"><#offerLast(Object) offerLast(e)<>#addLast(Object) addLast(e)/td></tr tr><<>th id="put » style="font-weight :normal ; text-align :left"#offer(Object) offer(e)>#put(Object) put(e)><</th<>td headers="Insert BDeque put"<#putLast(Object) putLast(e)>/td></tr><Tr><th id="offer2 » style="font-weight :normal ; text-align :left">#offer(Object, long, TimeUnit) offer(e, time, unit)</th<>td headers="Insert BDeque offer2"><#offerLast(Object, long, TimeUnit) offerLast(e, time, unit)/td<>/tr<<>>th id="Remove » rowspan="4 » style="text-align :left ; vertical-align :top">Remove/th th><id="remove » style="font-weight :normal ; text-align :left"<#remove() remove()>/th><td headers="Remove< BDeque remove"#removeFirst() removeFirst()></td<>/tr tr><><th id="poll1 » style= » font-weight :normal ; text-align :left"><#poll() poll()/th<>td headers="Remove BDeque poll1"<#pollFirst() pollFirst()>/td></tr tr>><<th id="take » style="font-weight :normal ; text-align :left">#take() take()</th<>td headers="Remove BDeque take"<>#takeFirst() takeFirst()/td<> tr><tr<>th id="poll2 » style="font-weight :normal ; text-align :left"#poll(long, TimeUnit) poll(time, unit)<>/th><td headers= » Supprimer BDeque poll2">#pollFirst(long, TimeUnit) pollFirst(time, unit)</td></tr tr><<>th id="Examine » rowspan="2 » style="text-align :left ; vertical-align :top">Examine</th th<>id="element » style="font-weight :normal ; text-align :left"<#element() element()>/th<>td headers="Examine BDeque element"#getFirst() getFirst()></td<>/tr tr><><th id="peek » style="font-weight :normal ; text-align :left » >#peek() peek()</th><td headers="Examine BDeque peek">#peekFirst() peekFirst()</td<>/tr></table>

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 BlockingDeque<i>happen-before</i> actions suite à l’accès ou à la suppression de cet élément dans BlockingDeque un autre thread.

Cette interface est membre de Java Collections Framework.

Ajouté dans la version 1.6.

Documentation Java pour java.util.concurrent.BlockingDeque.

Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.

Propriétés

First

Récupère, mais ne supprime pas, le premier élément de cette file d’attente.

(Hérité de IDeque)
Handle

Obtient la valeur JNI de l’objet Android sous-jacent.

(Hérité de IJavaObject)
IsEmpty

Retourne si cela Collection ne contient aucun élément.

(Hérité de ICollection)
JniIdentityHashCode

Retourne la valeur de java.lang.System.identityHashCode() l’instance encapsulée.

(Hérité de IJavaPeerable)
JniManagedPeerState

État de l’homologue managé.

(Hérité de IJavaPeerable)
JniPeerMembers

Prise en charge de l’accès aux membres et de l’appel.

(Hérité de IJavaPeerable)
Last

Récupère, mais ne supprime pas, le dernier élément de cette file d’attente.

(Hérité de IDeque)
PeerReference

Retourne une JniObjectReference instance d’objet Java encapsulée.

(Hérité de IJavaPeerable)

Méthodes

Add(Object)

Insère l’élément spécifié dans la file d’attente représentée par cette file d’attente (en d’autres termes, à la fin de cette file d’attente) s’il est possible de le faire immédiatement sans violer les restrictions de capacité, retourner true en cas de réussite et lever un IllegalStateException espace si aucun espace n’est actuellement disponible.

AddAll(ICollection)

Ajoute tous les éléments de la collection spécifiée à cette collection (opération facultative).

(Hérité de ICollection)
AddFirst(Object)

Insère l’élément spécifié à l’avant de cette file d’attente s’il est possible de le faire immédiatement sans violer les restrictions de capacité, lève un IllegalStateException espace si aucun espace n’est actuellement disponible.

AddLast(Object)

Insère l’élément spécifié à la fin de cette file d’attente s’il est possible de le faire immédiatement sans violer les restrictions de capacité, lève un IllegalStateException espace si aucun espace n’est actuellement disponible.

Clear()

Supprime tous les éléments de cette collection (opération facultative).

(Hérité de ICollection)
Contains(Object)

Retourne true si cette file d’attente contient l’élément spécifié.

ContainsAll(ICollection)

Retourne true si cette collection contient tous les éléments de la collection spécifiée.

(Hérité de ICollection)
DescendingIterator()

Retourne un itérateur sur les éléments de cette file d’attente dans l’ordre séquentiel inverse.

(Hérité de IDeque)
Disposed()

Appelé lorsque l’instance a été supprimée.

(Hérité de IJavaPeerable)
DisposeUnlessReferenced()

S’il n’existe aucune référence en suspens à cette instance, les appels Dispose(); sinon, ne fait rien.

(Hérité de IJavaPeerable)
DrainTo(ICollection)

Supprime tous les éléments disponibles de cette file d’attente et les ajoute à la collection donnée.

(Hérité de IBlockingQueue)
DrainTo(ICollection, Int32)

Supprime au maximum le nombre donné d’éléments disponibles de cette file d’attente et les ajoute à la collection donnée.

(Hérité de IBlockingQueue)
Element()

Récupère, mais ne supprime pas, la tête de la file d’attente représentée par cette file d’attente (en d’autres termes, le premier élément de cette file d’attente).

Equals(Object)

Compare l’objet spécifié à cette collection pour l’égalité.

(Hérité de ICollection)
Finalized()

Appelé lorsque l’instance a été finalisée.

(Hérité de IJavaPeerable)
ForEach(IConsumer)

Exécute l’action donnée pour chaque élément jusqu’à Iterable ce que tous les éléments aient été traités ou que l’action lève une exception.

(Hérité de IIterable)
GetHashCode()

Retourne la valeur du code de hachage pour cette collection.

(Hérité de ICollection)
Iterator()

Retourne un itérateur sur les éléments de cette file d’attente dans une séquence appropriée.

Offer(Object)

Insère l’élément spécifié dans la file d’attente représentée par cette file d’attente (en d’autres termes, à la fin de cette file d’attente) s’il est possible de le faire immédiatement sans violer les restrictions de capacité, en retournant true en cas de réussite et false si aucun espace n’est actuellement disponible.

Offer(Object, Int64, TimeUnit)

Insère l’élément spécifié dans la file d’attente représentée par cette file d’attente (en d’autres termes, à la fin de cette file d’attente), en attendant le délai d’attente spécifié si nécessaire pour que l’espace soit disponible.

OfferFirst(Object)

Insère l’élément spécifié à l’avant de cette file d’attente s’il est possible de le faire immédiatement sans violer les restrictions de capacité, en retournant true en cas de réussite et false si aucun espace n’est actuellement disponible.

OfferFirst(Object, Int64, TimeUnit)

Insère l’élément spécifié à l’avant de cette file d’attente, en attendant le temps d’attente spécifié si nécessaire pour que l’espace soit disponible.

OfferLast(Object)

Insère l’élément spécifié à la fin de cette file d’attente s’il est possible de le faire immédiatement sans violer les restrictions de capacité, en retournant true en cas de réussite et false si aucun espace n’est actuellement disponible.

OfferLast(Object, Int64, TimeUnit)

Insère l’élément spécifié à la fin de cette file d’attente, en attendant le délai d’attente spécifié si nécessaire pour que l’espace soit disponible.

Peek()

Récupère, mais ne supprime pas, la tête de la file d’attente représentée par cette file d’attente (en d’autres termes, le premier élément de cette file d’attente) ou retourne null si cette file d’attente est vide.

PeekFirst()

Récupère, mais ne supprime pas, le premier élément de cette file d’attente ou retourne null si cette file d’attente est vide.

(Hérité de IDeque)
PeekLast()

Récupère, mais ne supprime pas, le dernier élément de cette file d’attente ou retourne null si cette file d’attente est vide.

(Hérité de IDeque)
Poll()

Récupère et supprime la tête de la file d’attente représentée par cette file d’attente (en d’autres termes, le premier élément de cette file d’attente) ou retourne null si cette file d’attente est vide.

Poll(Int64, TimeUnit)

Récupère et supprime la tête de la file d’attente représentée par cette file d’attente (en d’autres termes, le premier élément de cette file d’attente), en attendant le délai d’attente spécifié si nécessaire pour qu’un élément devienne disponible.

PollFirst()

Récupère et supprime le premier élément de cette file d’attente, ou retourne null si cette file d’attente est vide.

(Hérité de IDeque)
PollFirst(Int64, TimeUnit)

Récupère et supprime le premier élément de cette file d’attente, en attendant le délai d’attente spécifié si nécessaire pour qu’un élément devienne disponible.

PollLast()

Récupère et supprime le dernier élément de cette file d’attente, ou retourne null si cette file d’attente est vide.

(Hérité de IDeque)
PollLast(Int64, TimeUnit)

Récupère et supprime le dernier élément de cette file d’attente, en attendant le délai d’attente spécifié si nécessaire pour qu’un élément devienne disponible.

Pop()

Affiche un élément de la pile représentée par cette file d’attente.

(Hérité de IDeque)
Push(Object)

Pousse un élément sur la pile représentée par cette file d’attente (en d’autres termes, à la tête de cette file d’attente) s’il est possible de le faire immédiatement sans violer les restrictions de capacité, lève un IllegalStateException espace si aucun espace n’est actuellement disponible.

Put(Object)

Insère l’élément spécifié dans la file d’attente représentée par cette file d’attente (en d’autres termes, à la fin de cette file d’attente), en attendant que l’espace soit disponible.

PutFirst(Object)

Insère l’élément spécifié à l’avant de cette file d’attente, en attendant que l’espace soit disponible.

PutLast(Object)

Insère l’élément spécifié à la fin de cette file d’attente, en attendant que l’espace soit disponible.

RemainingCapacity()

Retourne le nombre d’éléments supplémentaires que cette file d’attente peut idéalement (en l’absence de contraintes de mémoire ou de ressources) accepter sans blocage, ou Integer.MAX_VALUE s’il n’existe aucune limite intrinsèque.

(Hérité de IBlockingQueue)
Remove()

Récupère et supprime la tête de la file d’attente représentée par cette file d’attente (en d’autres termes, le premier élément de cette file d’attente).

Remove(Object)

Supprime la première occurrence de l’élément spécifié de cette file d’attente.

RemoveAll(ICollection)

Supprime tous les éléments de cette collection qui sont également contenus dans la collection spécifiée (opération facultative).

(Hérité de ICollection)
RemoveFirst()

Récupère et supprime le premier élément de cette file d’attente.

(Hérité de IDeque)
RemoveFirstOccurrence(Object)

Supprime la première occurrence de l’élément spécifié de cette file d’attente.

RemoveIf(IPredicate)

Supprime tous les éléments de cette collection qui répondent au prédicat donné.

(Hérité de ICollection)
RemoveLast()

Récupère et supprime le dernier élément de cette file d’attente.

(Hérité de IDeque)
RemoveLastOccurrence(Object)

Supprime la dernière occurrence de l’élément spécifié de cette file d’attente.

RetainAll(ICollection)

Conserve uniquement les éléments de cette collection contenus dans la collection spécifiée (opération facultative).

(Hérité de ICollection)
SetJniIdentityHashCode(Int32)

Définissez la valeur retournée par JniIdentityHashCode.

(Hérité de IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

(Hérité de IJavaPeerable)
SetPeerReference(JniObjectReference)

Définissez la valeur retournée par PeerReference.

(Hérité de IJavaPeerable)
Size()

Retourne le nombre d’éléments de cette file d’attente.

Spliterator()

Crée un Spliterator sur les éléments décrits par ce Iterable.

(Hérité de IIterable)
Take()

Récupère et supprime la tête de la file d’attente représentée par cette file d’attente (en d’autres termes, le premier élément de cette file d’attente), en attendant si nécessaire jusqu’à ce qu’un élément devienne disponible.

TakeFirst()

Récupère et supprime le premier élément de cette file d’attente, en attendant si nécessaire qu’un élément soit disponible.

TakeLast()

Récupère et supprime le dernier élément de cette file d’attente, en attendant si nécessaire qu’un élément soit disponible.

ToArray()

Retourne un tableau contenant tous les éléments de cette collection.

(Hérité de ICollection)
ToArray(IIntFunction)

Retourne un tableau contenant tous les éléments de cette collection, à l’aide de la fonction fournie generator pour allouer le tableau retourné.

(Hérité de ICollection)
ToArray(Object[])

Retourne un tableau contenant tous les éléments de cette collection ; le type d’exécution du tableau retourné est celui du tableau spécifié.

(Hérité de ICollection)
UnregisterFromRuntime()

Annulez l’inscription de cette instance afin que le runtime ne le retourne pas à partir d’appels futurs Java.Interop.JniRuntime+JniValueManager.PeekValue .

(Hérité de IJavaPeerable)

Implémentations d’interfaces explicites

IIterable.Spliterator()

Crée un Spliterator sur les éléments de cette collection.

(Hérité de ICollection)

Méthodes d’extension

JavaCast<TResult>(IJavaObject)

Effectue une conversion de type vérifiée par le runtime Android.

JavaCast<TResult>(IJavaObject)

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

GetJniTypeName(IJavaPeerable)

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

OfferFirstAsync(IBlockingDeque, Object)

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

OfferFirstAsync(IBlockingDeque, Object, Int64, TimeUnit)

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

OfferLastAsync(IBlockingDeque, Object)

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

OfferLastAsync(IBlockingDeque, Object, Int64, TimeUnit)

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

PollFirstAsync(IBlockingDeque, Int64, TimeUnit)

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

PollLastAsync(IBlockingDeque, Int64, TimeUnit)

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

PutFirstAsync(IBlockingDeque, Object)

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

PutLastAsync(IBlockingDeque, Object)

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

TakeFirstAsync(IBlockingDeque)

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

TakeLastAsync(IBlockingDeque)

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

OfferAsync(IBlockingQueue, Object)

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

OfferAsync(IBlockingQueue, Object, Int64, TimeUnit)

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

PollAsync(IBlockingQueue, Int64, TimeUnit)

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

PutAsync(IBlockingQueue, Object)

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

TakeAsync(IBlockingQueue)

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

ToEnumerable(IIterable)

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

ToEnumerable<T>(IIterable)

Qui Deque prend également en charge les opérations bloquantes qui attendent que la file d’attente devienne non vide lors de la récupération d’un élément et attend que l’espace devienne disponible dans la file d’attente lors du stockage d’un élément.

S’applique à