SelectionKey Classe

Definição

Um token que representa o registro de um SelectableChannel com um Selector.

[Android.Runtime.Register("java/nio/channels/SelectionKey", DoNotGenerateAcw=true)]
public abstract class SelectionKey : Java.Lang.Object
[<Android.Runtime.Register("java/nio/channels/SelectionKey", DoNotGenerateAcw=true)>]
type SelectionKey = class
    inherit Object
Herança
SelectionKey
Derivado
Atributos

Comentários

Um token que representa o registro de um SelectableChannel com um Selector.

Uma chave de seleção é criada sempre que um canal é registrado com um seletor. Uma chave permanece válida até ser cancelada invocando seu #cancel cancel método, fechando seu canal ou fechando seu seletor. Cancelar uma chave não a remove imediatamente de seu seletor; em vez disso, ele é adicionado ao i>cancelled-key set</i> do <seletor para remoção durante a próxima operação de seleção. A validade de uma chave pode ser testada invocando seu #isValid isValid método.

"opsets">

Uma chave de seleção contém dois conjuntos de operações representados como valores inteiros. Cada bit de um conjunto de operações indica uma categoria de operações selecionáveis com suporte pelo canal da chave.

<ul>

<li>

O conjunto de juros determina quais categorias de operação serão testadas para preparação na próxima vez que um dos métodos de seleção do seletor for invocado. O conjunto de juros é inicializado com o valor fornecido quando a chave é criada; ele poderá ser alterado posteriormente por meio do #interestOps(int) método.

</li>

<li>

O conjunto pronto identifica as categorias de operação para as quais o canal da chave foi detectado para estar pronto pelo seletor da chave. O conjunto pronto é inicializado como zero quando a chave é criada; ele pode ser atualizado posteriormente pelo seletor durante uma operação de seleção, mas não pode ser atualizado diretamente.

</li>

</ul>

Que o conjunto pronto de uma chave de seleção indica que seu canal está pronto para alguma categoria de operação é uma dica, mas não uma garantia, de que uma operação em tal categoria pode ser executada por um thread sem fazer com que o thread seja bloqueado. É mais provável que um conjunto pronto seja preciso imediatamente após a conclusão de uma operação de seleção. É provável que ele seja impreciso por eventos externos e por operações de E/S que são invocadas no canal correspondente.

Essa classe define todos os bits de conjunto de operações conhecidos, mas precisamente quais bits têm suporte por um determinado canal dependem do tipo do canal. Cada subclasse define SelectableChannel um SelectableChannel#validOps() validOps() método que retorna um conjunto que identifica apenas as operações compatíveis com o canal. Uma tentativa de definir ou testar um bit de conjunto de operações que não tem suporte pelo canal de uma chave resultará em uma exceção de tempo de execução apropriada.

Geralmente, é necessário associar alguns dados específicos do aplicativo a uma chave de seleção, por exemplo, um objeto que representa o estado de um protocolo de nível superior e lida com notificações de preparação para implementar esse protocolo. Portanto, as chaves de seleção dão suporte ao anexo de um único objeto arbitrário a uma chave. Um objeto pode ser anexado por meio do #attach attach método e depois recuperado por meio do #attachment() attachment método.

As chaves de seleção são seguras para uso por vários threads simultâneos. Uma operação de seleção sempre usará o valor de conjunto de juros que era atual no momento em que a operação começou.

Adicionado em 1.4.

Java documentação para java.nio.channels.SelectionKey.

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.

Construtores

Nome Description
SelectionKey()

Constrói uma instância dessa classe.

SelectionKey(IntPtr, JniHandleOwnership)

Um construtor usado ao criar representações gerenciadas de objetos JNI; chamado pelo runtime.

Campos

Nome Description
OpAccept
Obsoleto.

Bit de conjunto de operações para operações de aceitação de soquete.

OpConnect
Obsoleto.

Bit de conjunto de operações para operações de conexão de soquete.

OpRead
Obsoleto.

Bit de conjunto de operações para operações de leitura.

OpWrite
Obsoleto.

Bit de conjunto de operações para operações de gravação.

Propriedades

Nome Description
Class

Retorna a classe de runtime deste Object.

(Herdado de Object)
Handle

O identificador para a instância subjacente do Android.

(Herdado de Object)
IsAcceptable

Testa se o canal dessa chave está pronto para aceitar uma nova conexão de soquete.

IsConnectable

Testa se o canal dessa chave terminou ou não concluiu sua operação de conexão de soquete.

IsReadable

Testa se o canal dessa chave está pronto para leitura.

IsValid

Indica se essa chave é válida.

IsWritable

Testa se o canal dessa chave está pronto para gravação.

JniIdentityHashCode

Um token que representa o registro de um SelectableChannel com um Selector.

(Herdado de Object)
JniPeerMembers

Um token que representa o registro de um SelectableChannel com um Selector.

PeerReference

Um token que representa o registro de um SelectableChannel com um Selector.

(Herdado de Object)
ThresholdClass

Essa API dá suporte à infraestrutura do Mono para Android e não se destina a ser usada diretamente do seu código.

ThresholdType

Essa API dá suporte à infraestrutura do Mono para Android e não se destina a ser usada diretamente do seu código.

Métodos

Nome Description
Attach(Object)

Anexa o objeto fornecido a essa chave.

Attachment()

Recupera o anexo atual.

Cancel()

Solicita que o registro do canal dessa chave com seu seletor seja cancelado.

Channel()

Retorna o canal para o qual essa chave foi criada.

Clone()

Cria e retorna uma cópia desse objeto.

(Herdado de Object)
Dispose()

Um token que representa o registro de um SelectableChannel com um Selector.

(Herdado de Object)
Dispose(Boolean)

Um token que representa o registro de um SelectableChannel com um Selector.

(Herdado de Object)
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)
InterestOps()

Recupera o conjunto de interesses dessa chave.

InterestOps(Operations)

Recupera o conjunto de interesses dessa chave.

InterestOpsAnd(Int32)

Define atomicamente o interesse dessa chave definido como a interseção bit a bit ("e") do conjunto de juros existente e o valor fornecido.

InterestOpsOr(Int32)

Define atomicamente o interesse dessa chave definido como a união bit a bit ("ou") do conjunto de juros existente e o valor fornecido.

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

Recupera o conjunto de operações prontas dessa chave.

Selector()

Retorna o seletor para o qual essa chave foi criada.

SetHandle(IntPtr, JniHandleOwnership)

Define a propriedade Handle

(Herdado de Object)
ToArray<T>()

Um token que representa o registro de um SelectableChannel com um Selector.

(Herdado de Object)
ToString()

Retorna uma representação de cadeia de caracteres do objeto.

(Herdado de Object)
UnregisterFromRuntime()

Um token que representa o registro de um SelectableChannel com um Selector.

(Herdado de Object)
Wait()

Faz com que o thread atual aguarde até ser despertado, normalmente por ser <notificado/em> ou <em>interrompido</em>.<>

(Herdado de Object)
Wait(Int64, Int32)

Faz com que o thread atual aguarde até que ele seja despertado, normalmente por ser <>notificado</em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido.

(Herdado de Object)
Wait(Int64)

Faz com que o thread atual aguarde até que ele seja despertado, normalmente por ser <>notificado</em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido.

(Herdado de Object)

Implantações explícitas de interface

Nome Description
IJavaPeerable.Disposed()

Um token que representa o registro de um SelectableChannel com um Selector.

(Herdado de Object)
IJavaPeerable.DisposeUnlessReferenced()

Um token que representa o registro de um SelectableChannel com um Selector.

(Herdado de Object)
IJavaPeerable.Finalized()

Um token que representa o registro de um SelectableChannel com um Selector.

(Herdado de Object)
IJavaPeerable.JniManagedPeerState

Um token que representa o registro de um SelectableChannel com um Selector.

(Herdado de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Um token que representa o registro de um SelectableChannel com um Selector.

(Herdado de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Um token que representa o registro de um SelectableChannel com um Selector.

(Herdado de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Um token que representa o registro de um SelectableChannel com um Selector.

(Herdado de Object)

Métodos de Extensão

Nome Description
GetJniTypeName(IJavaPeerable)

Obtém o nome JNI do tipo da instância self.

JavaAs<TResult>(IJavaPeerable)

Tente coagir a digitar selfTResult, verificando se a coerção é válida no lado Java.

JavaCast<TResult>(IJavaObject)

Executa uma conversão de tipo marcada por runtime do Android.

JavaCast<TResult>(IJavaObject)

Um token que representa o registro de um SelectableChannel com um Selector.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Tente coagir a digitar selfTResult, verificando se a coerção é válida no lado Java.

Aplica-se a