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 WatchServicedarstellt.
[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 WatchServicedarstellt.
Ein Überwachungsschlüssel wird erstellt, wenn ein überwachungsfähiges Objekt bei einem Überwachungsdienst registriert wird. Der Schlüssel bleibt bis: ol>li Es wird explizit abgebrochen, indem er seine #cancel cancel Methode aufruft oder</li li><> implizit abgebrochen wird, da das Objekt nicht mehr zugänglich ist oder </li li>>< vom WatchService#close closing Watch-Dienst.><<#isValid valid
</li></ol>
Ein Überwachungsschlüssel weist einen Zustand auf. Beim ersten Erstellen des Schlüssels wird als em>ready</em> bezeichnet<. Wenn ein Ereignis erkannt wird, wird <der Schlüssel signalisiert<>/em> und in die Warteschlange eingereiht, sodass es abgerufen werden kann, indem er die Methoden oder WatchService#take() take Methoden des Überwachungsdiensts WatchService#poll() poll aufruft. Nach dem Signal verbleibt ein Schlüssel in diesem Zustand, bis seine #reset reset Methode aufgerufen wird, um den Schlüssel in den Zustand "Bereit" zurückzugeben. Ereignisse, die erkannt wurden, während sich der Schlüssel im signalgesteuerten Zustand befindet, werden in die Warteschlange eingereiht, aber nicht dazu führen, dass der Schlüssel für den Abruf vom Überwachungsdienst erneut in die Warteschlange gestellt wird. Ereignisse werden abgerufen, indem die Methode des Schlüssels #pollEvents pollEvents aufgerufen wird. Mit dieser Methode werden alle ereignisse abgerufen und entfernt, die für das Objekt gesammelt wurden. Bei der ersten Erstellung weist ein Überwachungsschlüssel keine ausstehenden Ereignisse auf. In der Regel werden Ereignisse abgerufen, wenn sich der Schlüssel im signalisierten Zustand 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
}
}
Überwachungstasten sind sicher für die Verwendung durch mehrere gleichzeitige Threads. Wenn es mehrere Threads gibt, die signalisierte Schlüssel von einem Überwachungsdienst abrufen, sollten Sie sicherstellen, dass die reset Methode nur aufgerufen wird, nachdem die Ereignisse für das Objekt verarbeitet wurden. Dadurch wird sichergestellt, dass ein Thread die Ereignisse für ein Objekt jederzeit verarbeitet.
In 1.7 hinzugefügt.
Java Dokumentation für java.nio.file.WatchKey.
Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.
Eigenschaften
| Name | Beschreibung |
|---|---|
| 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 |
| JniManagedPeerState |
Status des verwalteten Peers. (Geerbt von IJavaPeerable) |
| JniObjectReferenceControlBlock |
Ein Token, das die Registrierung eines |
| JniPeerMembers |
Mitgliedszugriff und Aufrufunterstützung. (Geerbt von IJavaPeerable) |
| PeerReference |
Gibt eine JniObjectReference der umbrochenen Java Objektinstanz zurück. (Geerbt von IJavaPeerable) |
Methoden
| Name | Beschreibung |
|---|---|
| Cancel() |
Bricht die Registrierung beim Watch-Dienst ab. |
| Disposed() |
Wird aufgerufen, wenn die Instanz verworfen wurde. (Geerbt von IJavaPeerable) |
| DisposeUnlessReferenced() |
Wenn keine offenen Verweise auf diese Instanz vorhanden sind, wird nichts aufgerufen |
| Finalized() |
Wird aufgerufen, wenn die Instanz abgeschlossen wurde. (Geerbt von IJavaPeerable) |
| PollEvents() |
Ruft alle ausstehenden Ereignisse für diesen Überwachungsschlüssel ab und entfernt sie, wobei eine |
| Reset() |
Setzt diesen Überwachungsschlü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 dieser Instanz auf, damit die Laufzeit sie nicht aus zukünftigen Java.Interop.JniRuntime+JniValueManager.PeekValue Aufrufen zurückgibt. (Geerbt von IJavaPeerable) |
| Watchable() |
Gibt das Objekt zurück, für das dieser Überwachungsschlüssel erstellt wurde. |
Erweiterungsmethoden
| Name | Beschreibung |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Ruft den JNI-Namen des Typs der Instanz |
| JavaAs<TResult>(IJavaPeerable) |
Versuchen Sie, die Eingabe |
| JavaCast<TResult>(IJavaObject) |
Führt eine android-laufzeitgecheckte Typkonvertierung aus. |
| JavaCast<TResult>(IJavaObject) |
Ein Token, das die Registrierung eines |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Versuchen Sie, die Eingabe |