ConditionPriorityBlockingQueue
public
class
ConditionPriorityBlockingQueue
extends Object
java.lang.Object | |
↳ | com.android.tradefed.util.ConditionPriorityBlockingQueue<T> |
Une classe thread-safe avec des opérations de type ERROR(/PriorityBlockingQueue)
pouvant récupérer des objets
qui remplissent une certaine condition.
L'itération est également thread-safe, mais pas cohérente. Une copie de la file d'attente est créée au niveau de l'itérateur
de création, et cette copie est utilisée
comme cible d'itération. Si la file d'attente est modifiée pendant
l'itération, aucune exception ERROR(/ConcurrentModificationException)
n'est générée, mais l'itérateur
ne reflètent pas non plus le contenu modifié.
Voir aussi :
Résumé
Classes imbriquées | |
---|---|
class |
ConditionPriorityBlockingQueue.AlwaysMatch<T>
|
interface |
ConditionPriorityBlockingQueue.IMatcher<T>
Interface permettant de déterminer si les éléments correspondent à une sorte de condition. |
Constructeurs publics | |
---|---|
ConditionPriorityBlockingQueue()
Crée un Les éléments seront prioritaires dans l'ordre FIFO. |
|
ConditionPriorityBlockingQueue(
Crée un |
Méthodes publiques | |
---|---|
boolean
|
add(T addedElement)
Insère l'élément spécifié dans cette file d'attente. |
T
|
addUnique(IMatcher<T> matcher, T object)
Ajoute un élément à cette file d'attente en remplaçant tout objet existant qui correspond à la condition donnée. |
void
|
clear()
Supprime tous les éléments de cette file d'attente. |
boolean
|
contains(T object)
Déterminez si un objet se trouve actuellement dans cette file d'attente. |
|
getCopy()
Obtenez une copie du contenu de la file d'attente. |
|
iterator()
|
T
|
poll(long timeout, TimeUnit unit)
Récupère et supprime le minimum (tel que jugé par l'élément |
T
|
poll(long timeout, TimeUnit unit, IMatcher<T> matcher)
Récupère et supprime le minimum (tel que jugé par l'élément |
T
|
poll(IMatcher<T> matcher)
Récupère et supprime le minimum (tel que jugé par l'élément |
T
|
poll()
Récupère et supprime le début de cette file d'attente. |
boolean
|
remove(T object)
Supprime un élément de cette file d'attente. |
int
|
size()
|
T
|
take()
Récupère et supprime le minimum (tel que jugé par l'élément |
T
|
take(IMatcher<T> matcher)
Récupère et supprime le premier élément T de la file d'attente où matcher.matches(T) est
|
Constructeurs publics
ConditionPriorityBlockingQueue
public ConditionPriorityBlockingQueue ()
Crée un ConditionPriorityBlockingQueue
Les éléments seront prioritaires dans l'ordre FIFO.
ConditionPriorityBlockingQueue
public ConditionPriorityBlockingQueue (c)
Crée un ConditionPriorityBlockingQueue
Paramètres | |
---|---|
c |
: ERROR(/Comparator) utilisé pour hiérarchiser la file d'attente. |
Méthodes publiques
ajouter
public boolean add (T addedElement)
Insère l'élément spécifié dans cette file d'attente. Comme la file d'attente est illimitée, cette méthode ne jamais bloquer.
Paramètres | |
---|---|
addedElement |
T : élément à ajouter |
Renvoie | |
---|---|
boolean |
true |
Génère | |
---|---|
ClassCastException |
si l'élément spécifié ne peut pas être comparé à d'autres éléments actuellement dans la file d'attente prioritaire selon l'ordre |
NullPointerException |
si l'élément spécifié est nul |
addUnique
public T addUnique (IMatcher<T> matcher, T object)
Ajoute un élément à cette file d'attente en remplaçant tout objet existant qui correspond à la condition donnée.
Paramètres | |
---|---|
matcher |
IMatcher : outil de mise en correspondance pour évaluer les objets existants. |
object |
T : objet à ajouter. |
Renvoie | |
---|---|
T |
L'objet remplacé ou null s'il n'en existe aucun |
effacer
public void clear ()
Supprime tous les éléments de cette file d'attente.
contient
public boolean contains (T object)
Déterminez si un objet se trouve actuellement dans cette file d'attente.
Paramètres | |
---|---|
object |
T : objet à rechercher. |
Renvoie | |
---|---|
boolean |
true si l'objet donné est contenu dans la file d'attente. false>
sinon. |
getCopy
publicgetCopy ()
Obtenez une copie du contenu de la file d'attente.
Renvoie | |
---|---|
|
itérateur
publiciterator ()
Renvoie | |
---|---|
|
sondage
public T poll (long timeout, TimeUnit unit)
Récupère et supprime le minimum (tel que jugé par l'élément ERROR(/Comparator)
T fourni dans
dans la file d'attente.
bloque jusqu'à timeout temps pour qu'un élément soit disponible.
Paramètres | |
---|---|
timeout |
long : délai d'attente avant qu'un élément ne soit disponible |
unit |
TimeUnit : ERROR(/TimeUnit) du délai avant expiration |
Renvoie | |
---|---|
T |
le nombre minimal d'éléments correspondants ou null s'il n'y a pas d'éléments correspondants |
sondage
public T poll (long timeout, TimeUnit unit, IMatcher<T> matcher)
Récupère et supprime le minimum (tel que jugé par l'élément ERROR(/Comparator)
T fourni dans
la file d'attente où matcher.matches(T) est true
.
bloque jusqu'à timeout temps pour qu'un élément soit disponible.
Paramètres | |
---|---|
timeout |
long : délai d'attente avant qu'un élément ne soit disponible |
unit |
TimeUnit : ERROR(/TimeUnit) du délai avant expiration |
matcher |
IMatcher : IMatcher à utiliser pour évaluer les éléments |
Renvoie | |
---|---|
T |
le nombre minimal d'éléments correspondants ou null s'il n'y a pas d'éléments correspondants |
sondage
public T poll (IMatcher<T> matcher)
Récupère et supprime le minimum (tel que jugé par l'élément ERROR(/Comparator)
T fourni dans
la file d'attente où matcher.matches(T) est true
.
Paramètres | |
---|---|
matcher |
IMatcher : IMatcher à utiliser pour évaluer les éléments |
Renvoie | |
---|---|
T |
le nombre minimal d'éléments correspondants ou null s'il n'y a pas d'éléments correspondants |
sondage
public T poll ()
Récupère et supprime le début de cette file d'attente.
Renvoie | |
---|---|
T |
le début de cette file d'attente, ou null si la file d'attente est vide. |
supprimer
public boolean remove (T object)
Supprime un élément de cette file d'attente.
Paramètres | |
---|---|
object |
T : objet à supprimer. |
Renvoie | |
---|---|
boolean |
true si l'objet donné a été supprimé de la file d'attente. false>
sinon. |
taille
public int size ()
Renvoie | |
---|---|
int |
le nombre d'éléments dans la file d'attente ; |
prendre
public T take ()
Récupère et supprime le minimum (tel que jugé par l'élément ERROR(/Comparator)
T fourni dans
dans la file d'attente.
Bloque indéfiniment pour qu'un élément soit disponible.
Renvoie | |
---|---|
T |
en tête de cette file d'attente |
Génère | |
---|---|
InterruptedException |
en cas d'interruption pendant l'attente |
prendre
public T take (IMatcher<T> matcher)
Récupère et supprime le premier élément T de la file d'attente où matcher.matches(T) est
true
, qui attend si nécessaire qu'un tel élément devienne disponible.
Paramètres | |
---|---|
matcher |
IMatcher : IMatcher à utiliser pour évaluer les éléments |
Renvoie | |
---|---|
T |
l'élément correspondant |
Génère | |
---|---|
InterruptedException |
en cas d'interruption pendant l'attente |