ConditionPriorityBlockingQueue
public
class
ConditionPriorityBlockingQueue
extends Object
implements
Iterable<T>
| java.lang.Object | |
| ↳ | com.android.tradefed.util.ConditionPriorityBlockingQueue<T> |
Classe thread-safe avec des opérations de type PriorityBlockingQueue permettant de récupérer des objets correspondant à une condition donnée.
L'itération est également thread-safe, mais pas cohérente. Une copie de la file d'attente est effectuée au moment de la création de l'itérateur, et cette copie est utilisée comme cible d'itération. Si la file d'attente est modifiée pendant l'itération, une ConcurrentModificationException ne sera pas générée, mais l'itérateur ne reflétera pas non plus le contenu modifié.
Voir aussi :
Résumé
Classes imbriquées | |
|---|---|
class |
ConditionPriorityBlockingQueue.AlwaysMatch<T>
Un |
interface |
ConditionPriorityBlockingQueue.IMatcher<T>
Interface permettant de déterminer si des éléments correspondent à une condition. |
Constructeurs publics | |
|---|---|
ConditionPriorityBlockingQueue()
Crée un Les éléments seront traités par ordre d'arrivée. |
|
ConditionPriorityBlockingQueue(Comparator<T> c)
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étermine si un objet est actuellement contenu dans cette file d'attente. |
List<T>
|
getCopy()
Obtenez une copie du contenu de la file d'attente. |
Iterator<T>
|
iterator()
|
T
|
poll(IMatcher<T> matcher)
Récupère et supprime le minimum (selon l'élément |
T
|
poll(long timeout, TimeUnit unit, IMatcher<T> matcher)
Récupère et supprime le minimum (selon l'élément |
T
|
poll(long timeout, TimeUnit unit)
Récupère et supprime l'élément minimal (selon l'élément |
T
|
poll()
Récupère et supprime l'élément en tête 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 l'élément minimal (selon 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 traités par ordre d'arrivée.
ConditionPriorityBlockingQueue
public ConditionPriorityBlockingQueue (Comparator<T> c)
Crée un ConditionPriorityBlockingQueue.
| Paramètres | |
|---|---|
c |
Comparator : Comparator utilisé pour définir la priorité de 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 n'est pas limitée, cette méthode ne se bloquera jamais.
| 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é aux éléments actuellement dans la file d'attente de priorité en fonction de l'ordre de la file d'attente de priorité. |
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étermine si un objet est actuellement contenu dans cette file d'attente.
| Paramètres | |
|---|---|
object |
T : objet à trouver |
| Renvoie | |
|---|---|
boolean |
true si l'objet donné est contenu dans la file d'attente. false> dans le cas contraire. |
getCopy
public List<T> getCopy ()
Obtenez une copie du contenu de la file d'attente.
| Renvoie | |
|---|---|
List<T> |
|
iterator
public Iterator<T> iterator ()
| Renvoie | |
|---|---|
Iterator<T> |
|
interroger
public T poll (IMatcher<T> matcher)
Récupère et supprime le minimum (selon l'élément Comparator 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 |
l'élément correspondant minimal ou null s'il n'y a aucun élément correspondant. |
interroger
public T poll (long timeout,
TimeUnit unit,
IMatcher<T> matcher)Récupère et supprime le minimum (selon l'élément Comparator fourni) dans la file d'attente où matcher.matches(T) est true.
Bloque jusqu'à timeout secondes pour qu'un élément devienne disponible.
| Paramètres | |
|---|---|
timeout |
long : délai d'attente avant qu'un élément ne devienne disponible. |
unit |
TimeUnit : TimeUnit du délai d'inactivité |
matcher |
IMatcher : IMatcher à utiliser pour évaluer les éléments |
| Renvoie | |
|---|---|
T |
l'élément correspondant minimal ou null s'il n'y a aucun élément correspondant. |
| Génère | |
|---|---|
InterruptedException |
|
interroger
public T poll (long timeout,
TimeUnit unit)Récupère et supprime l'élément minimal (selon l'élément Comparator fourni) de la file d'attente.
Bloque jusqu'à timeout secondes pour qu'un élément devienne disponible.
| Paramètres | |
|---|---|
timeout |
long : délai d'attente avant qu'un élément ne devienne disponible. |
unit |
TimeUnit : TimeUnit du délai d'inactivité |
| Renvoie | |
|---|---|
T |
l'élément correspondant minimal ou null s'il n'y a aucun élément correspondant. |
| Génère | |
|---|---|
InterruptedException |
|
interroger
public T poll ()
Récupère et supprime l'élément en tête de cette file d'attente.
| Renvoie | |
|---|---|
T |
Tête 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> dans le cas contraire. |
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 l'élément minimal (selon l'élément Comparator fourni) de la file d'attente.
Bloque indéfiniment un élément pour qu'il devienne disponible.
| Renvoie | |
|---|---|
T |
le début de cette file d'attente. |
| Génère | |
|---|---|
InterruptedException |
si l'utilisateur est interrompu 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, en attendant 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 |
si l'utilisateur est interrompu pendant l'attente. |