PriorityBlockingQueue Clase

Definición

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 objeto con la capacidad inicial predeterminada (11) que ordena sus elementos según su ordenación natural comparable.

PriorityBlockingQueue(ICollection)

Crea un PriorityBlockingQueue objeto que contiene los elementos de la colección especificada.

PriorityBlockingQueue(Int32, IComparator)

Crea un PriorityBlockingQueue objeto con la capacidad inicial especificada que ordena sus elementos según el comparador especificado.

PriorityBlockingQueue(Int32)

Crea un PriorityBlockingQueue objeto con la capacidad inicial especificada que ordena sus elementos según su ordenación natural comparable.

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 Objectobjeto .

(Heredado de Object)
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 PriorityQueue y proporciona operaciones de recuperación de bloqueo.

(Heredado de JavaObject)
JniPeerMembers

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.

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 null si esta cola usa el orden natural comparable de sus elementos.

Construct(JniObjectReference, JniObjectReferenceOptions)

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.

(Heredado de JavaObject)
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 PriorityQueue y proporciona operaciones de recuperación de bloqueo.

(Heredado de JavaObject)
DrainTo(ICollection, Int32)

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.

DrainTo(ICollection)

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.

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 PriorityQueue y proporciona operaciones de recuperación de bloqueo.

(Heredado de JavaObject)
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 PriorityQueue y proporciona operaciones de recuperación de bloqueo.

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 null si esta cola está vacía.

Poll()

Recupera y quita el encabezado de esta cola o devuelve null si esta cola está vacía.

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 Integer.MAX_VALUE porque no PriorityBlockingQueue hay una capacidad restringida.

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 PriorityQueue y proporciona operaciones de recuperación de bloqueo.

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 PriorityQueue y proporciona operaciones de recuperación de bloqueo.

(Heredado de JavaObject)
Size()

Devuelve un recuento del número de objetos que contiene Collection .

Spliterator()

Devuelve un elemento Spliterator sobre los elementos de esta cola.

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 PriorityQueue y proporciona operaciones de recuperación de bloqueo.

(Heredado de JavaObject)
IJavaPeerable.Finalized()

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.

(Heredado de JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

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.

(Heredado de JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

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.

(Heredado de JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

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.

(Heredado de JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

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.

(Heredado de JavaObject)
IJavaPeerable.UnregisterFromRuntime()

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.

Métodos de extensión

Nombre Description
GetJniTypeName(IJavaPeerable)

Obtiene el nombre JNI del tipo de la instancia self.

JavaAs<TResult>(IJavaPeerable)

Intente coerción self para escribir TResult, comprobando que la coerción es válida en el lado de Java.

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 PriorityQueue y proporciona operaciones de recuperación de bloqueo.

OfferAsync(IBlockingQueue, Object, Int64, TimeUnit)

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.

OfferAsync(IBlockingQueue, Object)

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.

PollAsync(IBlockingQueue, Int64, TimeUnit)

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.

PutAsync(IBlockingQueue, Object)

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.

TakeAsync(IBlockingQueue)

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.

ToEnumerable(IIterable)

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.

ToEnumerable<T>(IIterable)

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.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Intente coerción self para escribir TResult, comprobando que la coerción es válida en el lado de Java.

Se aplica a