SynchronousQueue Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa.
[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
- Herança
- Atributos
- Implementações
Comentários
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. Uma fila síncrona não tem nenhuma capacidade interna, nem mesmo uma capacidade de uma. Você não pode peek
em uma fila síncrona porque um elemento só está presente quando você tenta removê-lo, você não pode inserir um elemento (usando qualquer método) a menos que outro thread esteja tentando removê-lo, você não pode iterar, pois não há nada para iterar. O <em>head</em> da fila é o elemento que o primeiro thread de inserção enfileirado está tentando adicionar à fila, se não houver esse thread enfileirado, nenhum elemento estará disponível para remoção e poll()
retornará null
. Para fins de outros Collection
métodos (por exemplo contains
), um SynchronousQueue
atua como uma coleção vazia. Essa fila não permite null
elementos.
As filas síncronas são semelhantes aos canais de encontro usados no CSP e no Ada. Eles são adequados para designs de transferência, nos quais um objeto em execução em um thread deve sincronizar com um objeto em execução em outro thread para entregar a ele alguma informação, evento ou tarefa.
Essa classe oferece suporte a uma política de equidade opcional para pedidos de threads de produtores e consumidores em espera. Por padrão, esse pedido não é garantido. No entanto, uma fila construída com justiça definida para true
conceder acesso aos threads na ordem FIFO.
Essa classe e seu iterador implementam todos os <métodos em>optional</em> das Collection
interfaces e Iterator
.
Essa classe é membro do Java Collections Framework.
Adicionado em 1.5.
Documentação Java para java.util.concurrent.SynchronousQueue
.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usado de acordo com os termos descritos na Creative Commons 2.5 Attribution License.
Construtores
SynchronousQueue() |
Cria uma |
SynchronousQueue(Boolean) |
Cria uma |
SynchronousQueue(IntPtr, JniHandleOwnership) |
Um construtor usado ao criar representações gerenciadas de objetos JNI; chamado pelo tempo de execução. |
Propriedades
Class |
Retorna a classe de tempo de execução deste |
Handle |
O identificador para a instância subjacente do Android. (Herdado de Object) |
IsEmpty |
A ser adicionado (Herdado de AbstractCollection) |
JniIdentityHashCode |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. (Herdado de Object) |
JniPeerMembers |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. |
PeerReference |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. (Herdado de Object) |
ThresholdClass |
Esta API suporta a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código. |
ThresholdType |
Esta API suporta a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código. |
Métodos
Add(Object) |
A ser adicionado (Herdado de AbstractCollection) |
AddAll(ICollection) |
A ser adicionado (Herdado de AbstractCollection) |
Clear() |
A ser adicionado (Herdado de AbstractCollection) |
Clone() |
Cria e retorna uma cópia desse objeto. (Herdado de Object) |
Contains(Object) |
A ser adicionado (Herdado de AbstractCollection) |
ContainsAll(ICollection) |
A ser adicionado (Herdado de AbstractCollection) |
Dispose() |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. (Herdado de Object) |
Dispose(Boolean) |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. (Herdado de Object) |
DrainTo(ICollection) |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. |
DrainTo(ICollection, Int32) |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. |
Element() |
Recupera, mas não remove, o cabeçalho dessa fila. (Herdado de AbstractQueue) |
Equals(Object) |
Indica se algum outro objeto é "igual" a este. (Herdado de Object) |
GetHashCode() |
Retorna um valor de código hash para o objeto. (Herdado de Object) |
Iterator() |
Retorna um iterador vazio no qual |
JavaFinalize() |
Chamado pelo coletor de lixo em um objeto quando a coleta de lixo determina que não há mais referências ao objeto. (Herdado de Object) |
Notify() |
Ativa um único thread que está aguardando no monitor deste objeto. (Herdado de Object) |
NotifyAll() |
Ativa todos os threads que estão aguardando no monitor deste objeto. (Herdado de Object) |
Offer(Object) |
Insere o elemento especificado nessa fila, se outro thread estiver aguardando para recebê-lo. |
Offer(Object, Int64, TimeUnit) |
Insere o elemento especificado nessa fila, aguardando, se necessário, até o tempo de espera especificado para que outro thread o receba. |
Peek() |
Sempre retorna |
Poll() |
Recupera e remove o cabeçalho dessa fila, se outro thread estiver disponibilizando um elemento no momento. |
Poll(Int64, TimeUnit) |
Recupera e remove o cabeçalho dessa fila, aguardando, se necessário, até o tempo de espera especificado, para que outro thread o insira. |
Put(Object) |
Adiciona o elemento especificado a essa fila, aguardando, se necessário, que outro thread o receba. |
RemainingCapacity() |
Sempre retorna zero. |
Remove() |
Recupera e remove o cabeçalho dessa fila. (Herdado de AbstractQueue) |
Remove(Object) |
A ser adicionado (Herdado de AbstractCollection) |
RemoveAll(ICollection) |
A ser adicionado (Herdado de AbstractCollection) |
RetainAll(ICollection) |
A ser adicionado (Herdado de AbstractCollection) |
SetHandle(IntPtr, JniHandleOwnership) |
Define a propriedade Handle. (Herdado de Object) |
Size() |
Sempre retorna zero. |
Spliterator() |
Retorna um divisor vazio no qual as chamadas para |
Take() |
Recupera e remove o cabeçalho dessa fila, aguardando, se necessário, que outro thread o insira. |
ToArray() |
A ser adicionado (Herdado de AbstractCollection) |
ToArray(Object[]) |
A ser adicionado (Herdado de AbstractCollection) |
ToArray<T>() |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. (Herdado de Object) |
ToString() |
Retorna uma representação de cadeia de caracteres do objeto. (Herdado de Object) |
UnregisterFromRuntime() |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. (Herdado de Object) |
Wait() |
Faz com que o thread atual aguarde até que ele seja ativado, normalmente sendo <em notificado</em> ou <em>interrompido</em>>. (Herdado de Object) |
Wait(Int64) |
Faz com que o thread atual aguarde até que ele seja despertado, normalmente sendo <em>notificado</em> ou <em interrompido</em>, ou até que>uma certa quantidade de tempo real tenha decorrido. (Herdado de Object) |
Wait(Int64, Int32) |
Faz com que o thread atual aguarde até que ele seja despertado, normalmente sendo <em>notificado</em> ou <em interrompido</em>, ou até que>uma certa quantidade de tempo real tenha decorrido. (Herdado de Object) |
Implantações explícitas de interface
IJavaPeerable.Disposed() |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. (Herdado de Object) |
IJavaPeerable.DisposeUnlessReferenced() |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. (Herdado de Object) |
IJavaPeerable.Finalized() |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. (Herdado de Object) |
IJavaPeerable.JniManagedPeerState |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. (Herdado de Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. (Herdado de Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. (Herdado de Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. (Herdado de Object) |
Métodos de Extensão
JavaCast<TResult>(IJavaObject) |
Executa uma conversão de tipo verificada em tempo de execução do Android. |
JavaCast<TResult>(IJavaObject) |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. |
GetJniTypeName(IJavaPeerable) |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. |
OfferAsync(IBlockingQueue, Object) |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. |
OfferAsync(IBlockingQueue, Object, Int64, TimeUnit) |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. |
PollAsync(IBlockingQueue, Int64, TimeUnit) |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. |
PutAsync(IBlockingQueue, Object) |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. |
TakeAsync(IBlockingQueue) |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. |
ToEnumerable(IIterable) |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. |
ToEnumerable<T>(IIterable) |
Uma fila de bloqueio BlockingQueue na qual cada operação de inserção deve aguardar uma operação de remoção correspondente por outro thread e vice-versa. |