Compartir a través de


SynchronousQueue Clase

Definición

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

[Android.Runtime.Register("java/util/concurrent/SynchronousQueue", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public class SynchronousQueue : Java.Util.AbstractQueue, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable, Java.Util.Concurrent.IBlockingQueue
[<Android.Runtime.Register("java/util/concurrent/SynchronousQueue", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type SynchronousQueue = 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 BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa. Una cola sincrónica no tiene ninguna capacidad interna, ni siquiera una capacidad de uno. No puede peek estar en una cola sincrónica porque un elemento solo está presente al intentar quitarlo; no puede insertar un elemento (mediante ningún método) a menos que otro subproceso intente quitarlo; no puede iterar porque no hay nada que iterar. El <encabezado<> em>de la cola es el elemento que el primer subproceso de inserción en cola está intentando agregar a la cola; si no hay ningún subproceso en cola, no hay ningún elemento disponible para su eliminación y poll() devolverá null. Para fines de otros Collection métodos (por ejemplo contains), un SynchronousQueue actúa como una colección vacía. Esta cola no permite null elementos.

Las colas sincrónicas son similares a los canales de encuentro utilizados en CSP y Ada. Son adecuados para diseños de entrega, en los que un objeto que se ejecuta en un subproceso debe sincronizarse con un objeto que se ejecuta en otro subproceso para entregar información, evento o tarea.

Esta clase admite una directiva de equidad opcional para ordenar subprocesos de consumidor y productor en espera. De forma predeterminada, esta ordenación no está garantizada. Sin embargo, una cola construida con equidad establecida para conceder acceso a true subprocesos en orden FIFO.

Esta clase y su iterador implementan todos los <métodos opcionales></em> de las Collection interfaces y Iterator .

Esta clase es miembro de Java Collections Framework.

Agregado en 1.5.

Documentación de Java para java.util.concurrent.SynchronousQueue.

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.

Constructores

SynchronousQueue()

Crea un objeto con una SynchronousQueue directiva de acceso no feriada.

SynchronousQueue(Boolean)

Crea un SynchronousQueue objeto con la directiva de equidad especificada.

SynchronousQueue(IntPtr, JniHandleOwnership)

Constructor utilizado al crear representaciones administradas de objetos JNI; llamado por el tiempo de ejecución.

Propiedades

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

Para agregar

(Heredado de AbstractCollection)
JniIdentityHashCode

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

(Heredado de Object)
JniPeerMembers

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

PeerReference

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

(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

Add(Object)

Para agregar

(Heredado de AbstractCollection)
AddAll(ICollection)

Para agregar

(Heredado de AbstractCollection)
Clear()

Para agregar

(Heredado de AbstractCollection)
Clone()

Crea y devuelve una copia de este objeto.

(Heredado de Object)
Contains(Object)

Para agregar

(Heredado de AbstractCollection)
ContainsAll(ICollection)

Para agregar

(Heredado de AbstractCollection)
Dispose()

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

(Heredado de Object)
Dispose(Boolean)

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

(Heredado de Object)
DrainTo(ICollection)

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

DrainTo(ICollection, Int32)

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

Element()

Recupera, pero no quita, el encabezado de esta cola.

(Heredado de AbstractQueue)
Equals(Object)

Indica si algún otro objeto es "igual a" este.

(Heredado de Object)
GetHashCode()

Devuelve un valor de código hash del objeto.

(Heredado de Object)
Iterator()

Devuelve un iterador vacío en el que hasNext siempre devuelve false.

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)

Inserta el elemento especificado en esta cola, si otro subproceso está esperando recibirlo.

Offer(Object, Int64, TimeUnit)

Inserta el elemento especificado en esta cola, esperando si es necesario hasta el tiempo de espera especificado para que otro subproceso lo reciba.

Peek()

Siempre devuelve null.

Poll()

Recupera y quita el encabezado de esta cola, si otro subproceso está haciendo disponible un elemento actualmente.

Poll(Int64, TimeUnit)

Recupera y quita el encabezado de esta cola, esperando si es necesario hasta el tiempo de espera especificado, para que otro subproceso lo inserte.

Put(Object)

Agrega el elemento especificado a esta cola, esperando si es necesario para que otro subproceso lo reciba.

RemainingCapacity()

Siempre devuelve cero.

Remove()

Recupera y quita el encabezado de esta cola.

(Heredado de AbstractQueue)
Remove(Object)

Para agregar

(Heredado de AbstractCollection)
RemoveAll(ICollection)

Para agregar

(Heredado de AbstractCollection)
RetainAll(ICollection)

Para agregar

(Heredado de AbstractCollection)
SetHandle(IntPtr, JniHandleOwnership)

Establece la propiedad Handle.

(Heredado de Object)
Size()

Siempre devuelve cero.

Spliterator()

Devuelve un divisor vacío en el que llama a para Spliterator#trySplit() trySplit devolver nullsiempre .

Take()

Recupera y quita el encabezado de esta cola, esperando si es necesario para que otro subproceso lo inserte.

ToArray()

Para agregar

(Heredado de AbstractCollection)
ToArray(Object[])

Para agregar

(Heredado de AbstractCollection)
ToArray<T>()

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

(Heredado de Object)
ToString()

Devuelve una representación de cadena del objeto.

(Heredado de Object)
UnregisterFromRuntime()

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

(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)

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, 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)

Implementaciones de interfaz explícitas

IJavaPeerable.Disposed()

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

(Heredado de Object)
IJavaPeerable.DisposeUnlessReferenced()

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

(Heredado de Object)
IJavaPeerable.Finalized()

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

(Heredado de Object)
IJavaPeerable.JniManagedPeerState

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

(Heredado de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

(Heredado de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

(Heredado de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

(Heredado de Object)

Métodos de extensió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 BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

GetJniTypeName(IJavaPeerable)

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

OfferAsync(IBlockingQueue, Object)

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

OfferAsync(IBlockingQueue, Object, Int64, TimeUnit)

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

PollAsync(IBlockingQueue, Int64, TimeUnit)

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

PutAsync(IBlockingQueue, Object)

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

TakeAsync(IBlockingQueue)

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

ToEnumerable(IIterable)

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

ToEnumerable<T>(IIterable)

Una cola de bloqueo BlockingQueue en la que cada operación de inserción debe esperar una operación de eliminación correspondiente por otro subproceso y viceversa.

Se aplica a