PriorityBlockingQueue Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase PriorityQueue y proporciona operaciones de recuperación de bloqueo.
[Android.Runtime.Register("java/util/concurrent/PriorityBlockingQueue", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public class PriorityBlockingQueue : Java.Util.AbstractQueue, IDisposable, Java.IO.ISerializable, Java.Util.Concurrent.IBlockingQueue
[<Android.Runtime.Register("java/util/concurrent/PriorityBlockingQueue", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type PriorityBlockingQueue = class
inherit AbstractQueue
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
interface IBlockingQueue
interface IQueue
interface ICollection
interface IIterable
- Herencia
- Atributos
- Implementaciones
Comentarios
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase PriorityQueue y proporciona operaciones de recuperación de bloqueo. Aunque esta cola está sin enlazar lógicamente, es posible que se produzca un error en las adiciones intentadas debido al agotamiento de recursos (lo que provoca OutOfMemoryError). Esta clase no permite null elementos. Una cola de prioridad que se basa en el orden natural comparable tampoco permite la inserción de objetos no comparables (lo que da como resultado ClassCastException).
Esta clase y su iterador implementan todos los <métodos opcionales></em> de las Collection interfaces y Iterator . El iterador proporcionado en el método #iterator() y el Spliterator proporcionado en el método #spliterator() son <em>not</em> garantizados para atravesar los elementos de PriorityBlockingQueue en cualquier orden determinado. Si necesita recorrido ordenado, considere la posibilidad de usar Arrays.sort(pq.toArray()). Además, el método drainTo se puede usar para<> em remove</em> algunos o todos los elementos en orden de prioridad y colocarlos en otra colección.
Las operaciones de esta clase no garantizan la ordenación de elementos con la misma prioridad. Si necesita aplicar una ordenación, puede definir clases o comparadores personalizados que usan una clave secundaria para interrumpir los vínculos en los valores de prioridad principal. Por ejemplo, esta es una clase que aplica el desempate primero en salir a elementos comparables. Para usarlo, insertaría en new FIFOEntry(anEntry) lugar de un objeto de entrada sin formato.
{@code
class FIFOEntry<E extends Comparable<? super E>>
implements Comparable<FIFOEntry<E>> {
static final AtomicLong seq = new AtomicLong();
final long seqNum;
final E entry;
public FIFOEntry(E entry) {
seqNum = seq.getAndIncrement();
this.entry = entry;
}
public E getEntry() { return entry; }
public int compareTo(FIFOEntry<E> other) {
int res = entry.compareTo(other.entry);
if (res == 0 && other.entry != this.entry)
res = (seqNum < other.seqNum ? -1 : 1);
return res;
}
}}
Esta clase es miembro del marco de colecciones de Java.
Agregado en 1.5.
Java documentación para java.util.concurrent.PriorityBlockingQueue.
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 |
|---|---|
| PriorityBlockingQueue() |
Crea un |
| PriorityBlockingQueue(ICollection) |
Crea un |
| PriorityBlockingQueue(Int32, IComparator) |
Crea un |
| PriorityBlockingQueue(Int32) |
Crea un |
| PriorityBlockingQueue(IntPtr, JniHandleOwnership) |
Constructor utilizado al crear representaciones administradas de objetos JNI; llamado por el tiempo de ejecución. |
Propiedades
| Nombre | Description |
|---|---|
| Class |
Devuelve la clase en tiempo de ejecución de este |
| Handle |
Identificador de la instancia de Android subyacente. (Heredado de Object) |
| IsEmpty |
Por agregar (Heredado de AbstractCollection) |
| 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 cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| JniPeerMembers |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| 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(Object) |
Por agregar (Heredado de AbstractCollection) |
| AddAll(ICollection) |
Por agregar (Heredado de AbstractCollection) |
| Clear() |
Por agregar (Heredado de AbstractCollection) |
| Clone() |
Crea y devuelve una copia de este objeto. (Heredado de Object) |
| Comparator() |
Devuelve el comparador utilizado para ordenar los elementos de esta cola o |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| Contains(Object) |
Por agregar (Heredado de AbstractCollection) |
| ContainsAll(ICollection) |
Por agregar (Heredado de AbstractCollection) |
| 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 cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| DrainTo(ICollection, Int32) |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| DrainTo(ICollection) |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| Element() |
Recupera, pero no quita, el encabezado de esta cola. (Heredado de AbstractQueue) |
| Equals(Object) |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| Equals(Object) |
Indica si algún otro objeto es "igual a" este. (Heredado de Object) |
| ForEach(IConsumer) |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| GetHashCode() |
Devuelve un valor de código hash del objeto. (Heredado de Object) |
| Iterator() |
Devuelve un iterador sobre los elementos de esta cola. |
| 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) |
| 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) |
| Offer(Object, Int64, TimeUnit) |
Inserta el elemento especificado en esta cola de prioridad. |
| Offer(Object) |
Inserta el elemento especificado en esta cola de prioridad. |
| Peek() |
Recupera, pero no quita, el encabezado de esta cola o devuelve |
| Poll() |
Recupera y quita el encabezado de esta cola o devuelve |
| Poll(Int64, TimeUnit) |
Recupera y quita el encabezado de esta cola, esperando hasta el tiempo de espera especificado si es necesario para que un elemento esté disponible. |
| Put(Object) |
Inserta el elemento especificado en esta cola de prioridad. |
| RemainingCapacity() |
Siempre devuelve |
| Remove() |
Recupera y quita el encabezado de esta cola. (Heredado de AbstractQueue) |
| Remove(Object) |
Por agregar (Heredado de AbstractCollection) |
| RemoveAll(ICollection) |
Por agregar (Heredado de AbstractCollection) |
| RemoveIf(IPredicate) |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| RetainAll(ICollection) |
Por agregar (Heredado de AbstractCollection) |
| SetHandle(IntPtr, JniHandleOwnership) |
Establece la propiedad Handle. (Heredado de Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| Size() |
Devuelve un recuento del número de objetos que contiene |
| Spliterator() |
Devuelve un elemento |
| Take() |
Recupera y quita el encabezado de esta cola, esperando si es necesario hasta que un elemento esté disponible. |
| ToArray() |
Por agregar (Heredado de AbstractCollection) |
| ToArray(Object[]) |
Por agregar (Heredado de AbstractCollection) |
| 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 despierta, 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 cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| IJavaPeerable.Finalized() |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| IJavaPeerable.JniObjectReferenceControlBlock |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| IJavaPeerable.UnregisterFromRuntime() |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
Métodos de extensión
| Nombre | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtiene el nombre JNI del tipo de la instancia |
| JavaAs<TResult>(IJavaPeerable) |
Intente coerción |
| JavaCast<TResult>(IJavaObject) |
Realiza una conversión de tipos comprobados en tiempo de ejecución de Android. |
| JavaCast<TResult>(IJavaObject) |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| OfferAsync(IBlockingQueue, Object, Int64, TimeUnit) |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| OfferAsync(IBlockingQueue, Object) |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| PollAsync(IBlockingQueue, Int64, TimeUnit) |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| PutAsync(IBlockingQueue, Object) |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| TakeAsync(IBlockingQueue) |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| ToEnumerable(IIterable) |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| ToEnumerable<T>(IIterable) |
Una cola de bloqueo de BlockingQueue sin enlazar que usa las mismas reglas de ordenación que la clase |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Intente coerción |