IWatchKey Interface
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.
Um token que representa o registro de um Watchable watchable objeto com um WatchService.
[Android.Runtime.Register("java/nio/file/WatchKey", "", "Java.Nio.FileNio.IWatchKeyInvoker", ApiSince=26)]
public interface IWatchKey : Android.Runtime.IJavaObject, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("java/nio/file/WatchKey", "", "Java.Nio.FileNio.IWatchKeyInvoker", ApiSince=26)>]
type IWatchKey = interface
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- Atributos
- Implementações
Comentários
Um token que representa o registro de um Watchable watchable objeto com um WatchService.
Uma chave de inspeção é criada quando um objeto watchable é registrado com um serviço de inspeção. A chave permanece #isValid valid até: <ol><li> Ela é cancelada, explicitamente, invocando seu #cancel cancel método ou</li<>li> Cancelada implicitamente, porque o objeto não está mais acessível ou </li<>li> pelo WatchService#close closing serviço de inspeção.
</li></ol>
Uma chave de inspeção tem um estado. Quando inicialmente criado, diz-se que <a chave está pronta></em>. Quando um evento é detectado, a chave é <>sinalizada</em> e enfileirada para que possa ser recuperada invocando os métodos ou WatchService#take() take os métodos do serviço de WatchService#poll() poll inspeção. Uma vez sinalizada, uma chave permanece nesse estado até que seu #reset reset método seja invocado para retornar a chave ao estado pronto. Os eventos detectados enquanto a chave está no estado sinalizado são enfileirados, mas não fazem com que a chave seja enfileirada novamente para recuperação do serviço de inspeção. Os eventos são recuperados invocando o método da #pollEvents pollEvents chave. Esse método recupera e remove todos os eventos acumulados para o objeto. Quando criada inicialmente, uma chave de inspeção não tem eventos pendentes. Normalmente, os eventos são recuperados quando a chave está no estado sinalizado que leva ao seguinte idioma:
for (;;) {
// retrieve key
WatchKey key = watcher.take();
// process events
for (WatchEvent<?> event: key.pollEvents()) {
:
}
// reset the key
boolean valid = key.reset();
if (!valid) {
// object no longer registered
}
}
As chaves de inspeção são seguras para uso por vários threads simultâneos. Em que há vários threads recuperando chaves sinalizadas de um serviço de inspeção, deve-se tomar cuidado para garantir que o reset método seja invocado somente depois que os eventos do objeto tiverem sido processados. Isso garante que um thread esteja processando os eventos de um objeto a qualquer momento.
Adicionado em 1.7.
Java documentação para java.nio.file.WatchKey.
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.
Propriedades
| Nome | Description |
|---|---|
| Handle |
Obtém o valor JNI do objeto Android subjacente. (Herdado de IJavaObject) |
| IsValid |
Um token que representa o registro de um |
| JniIdentityHashCode |
Retorna o valor da |
| JniManagedPeerState |
Estado do par gerenciado. (Herdado de IJavaPeerable) |
| JniPeerMembers |
Acesso ao membro e suporte à invocação. (Herdado de IJavaPeerable) |
| PeerReference |
Retorna uma JniObjectReference das instâncias de objeto Java encapsuladas. (Herdado de IJavaPeerable) |
Métodos
| Nome | Description |
|---|---|
| Cancel() |
Cancela o registro com o serviço de inspeção. |
| Disposed() |
Chamado quando a instância foi descartada. (Herdado de IJavaPeerable) |
| DisposeUnlessReferenced() |
Se não houver referências pendentes a essa instância, então chamará |
| Finalized() |
Chamado quando a instância foi finalizada. (Herdado de IJavaPeerable) |
| PollEvents() |
Recupera e remove todos os eventos pendentes para essa chave de inspeção, retornando um |
| Reset() |
Redefine essa tecla de inspeção. |
| SetJniIdentityHashCode(Int32) |
Defina o valor retornado por |
| SetJniManagedPeerState(JniManagedPeerStates) |
Um token que representa o registro de um |
| SetPeerReference(JniObjectReference) |
Defina o valor retornado por |
| UnregisterFromRuntime() |
Cancele o registro dessa instância para que o runtime não a retorne de invocações futuras Java.Interop.JniRuntime+JniValueManager.PeekValue . (Herdado de IJavaPeerable) |
| Watchable() |
Retorna o objeto para o qual essa chave de inspeção foi criada. |
Métodos de Extensão
| Nome | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtém o nome JNI do tipo da instância |
| JavaAs<TResult>(IJavaPeerable) |
Tente coagir a digitar |
| 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 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Tente coagir a digitar |