IWatchKey Schnittstelle
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ein Token, das die Registrierung eines Watchable watchable
-Objekts mit einem WatchService
darstellt.
[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
- Attribute
- Implementiert
Hinweise
Ein Token, das die Registrierung eines Watchable watchable
-Objekts mit einem WatchService
darstellt.
Ein watch Schlüssel wird erstellt, wenn ein überwachtes Objekt bei einem watch-Dienst registriert wird. Der Schlüssel verbleibt#isValid valid
, bis: <ol<>li> Er wird explizit durch Aufrufen der #cancel cancel
-Methode oder</li><li> implizit abgebrochen, da das Objekt nicht mehr zugänglich ist, oder </li<>li> Durch WatchService#close closing
den watch-Dienst. </li></ol>
Ein watch Schlüssel hat einen Zustand. Bei der ersten Erstellung wird der Schlüssel als em>ready</em> bezeichnet<. Wenn ein Ereignis erkannt wird, wird <>der Schlüssel signalisiert</em> und in die Warteschlange eingereiht, sodass er durch Aufrufen der methoden oder des WatchService#take() take
watch Diensts WatchService#poll() poll
abgerufen werden kann. Nach der Signalisierung verbleibt ein Schlüssel in diesem Zustand, bis seine #reset reset
Methode aufgerufen wird, um den Schlüssel in den Status Bereit zurückzugeben. Ereignisse, die erkannt werden, während sich der Schlüssel im Signalzustand befindet, werden in die Warteschlange eingereiht, führen jedoch nicht dazu, dass der Schlüssel für den Abruf aus dem watch-Dienst erneut in die Warteschlange eingereiht wird. Ereignisse werden durch Aufrufen der -Methode des Schlüssels #pollEvents pollEvents
abgerufen. Diese Methode ruft alle für das -Objekt gesammelten Ereignisse ab und entfernt sie. Bei der ersten Erstellung weist ein watch Schlüssel keine ausstehenden Ereignisse auf. In der Regel werden Ereignisse abgerufen, wenn sich der Schlüssel im Signalzustand befindet, der zu folgendem Idiom führt:
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
}
}
Überwachungsschlüssel sind für die Verwendung durch mehrere gleichzeitige Threads sicher. Wenn mehrere Threads Signalschlüssel von einem watch-Dienst abrufen, sollte darauf geachtet werden, dass die reset
Methode erst aufgerufen wird, nachdem die Ereignisse für das Objekt verarbeitet wurden. Dadurch wird sichergestellt, dass die Ereignisse für ein Objekt jederzeit von einem Thread verarbeitet werden.
In Version 1.7 hinzugefügt.
Java-Dokumentation für java.nio.file.WatchKey
.
Teile dieser Seite sind Änderungen, die auf Arbeiten basieren, die vom Android Open Source Project erstellt und freigegeben wurden und gemäß den In Attribution License beschriebenen Begriffen verwendet werden.
Eigenschaften
Handle |
Ruft den JNI-Wert des zugrunde liegenden Android-Objekts ab. (Geerbt von IJavaObject) |
IsValid |
Ein Token, das die Registrierung eines |
JniIdentityHashCode |
Gibt den Wert von |
JniManagedPeerState |
Status des verwalteten Peers. (Geerbt von IJavaPeerable) |
JniPeerMembers |
Unterstützung für Zugriff und Aufruf von Mitgliedern. (Geerbt von IJavaPeerable) |
PeerReference |
Gibt einen JniObjectReference des umschlossenen Java-Objekts instance zurück. (Geerbt von IJavaPeerable) |
Methoden
Cancel() |
Bricht die Registrierung beim watch-Dienst ab. |
Disposed() |
Wird aufgerufen, wenn die instance gelöscht wurde. (Geerbt von IJavaPeerable) |
DisposeUnlessReferenced() |
Wenn keine ausstehenden Verweise auf diese instance vorhanden sind, ruft auf |
Finalized() |
Wird aufgerufen, wenn die instance abgeschlossen wurde. (Geerbt von IJavaPeerable) |
PollEvents() |
Ruft alle ausstehenden Ereignisse für diesen watch Schlüssel ab und entfernt sie und gibt eine |
Reset() |
Setzt diesen watch-Schlüssel zurück. |
SetJniIdentityHashCode(Int32) |
Legen Sie den von |
SetJniManagedPeerState(JniManagedPeerStates) |
Ein Token, das die Registrierung eines |
SetPeerReference(JniObjectReference) |
Legen Sie den von |
UnregisterFromRuntime() |
Heben Sie die Registrierung dieses instance auf, damit die Laufzeit sie nicht von zukünftigen Java.Interop.JniRuntime+JniValueManager.PeekValue Aufrufen zurückgibt. (Geerbt von IJavaPeerable) |
Watchable() |
Gibt das Objekt zurück, für das dieser watch Schlüssel erstellt wurde. |
Erweiterungsmethoden
JavaCast<TResult>(IJavaObject) |
Führt eine Typkonvertierung mit Überprüfung der Android-Laufzeit aus. |
JavaCast<TResult>(IJavaObject) |
Ein Token, das die Registrierung eines |
GetJniTypeName(IJavaPeerable) |
Ein Token, das die Registrierung eines |