Share via


IWatchKey Schnittstelle

Definition

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 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&lt;?&gt; 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 Watchable watchable -Objekts mit einem WatchServicedarstellt.

JniIdentityHashCode

Gibt den Wert von java.lang.System.identityHashCode() für die umschlossene instance zurück.

(Geerbt von IJavaPeerable)
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 aufDispose(). Andernfalls wird nichts ausgeführt.

(Geerbt von IJavaPeerable)
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 List der abgerufenen Ereignisse zurück.

Reset()

Setzt diesen watch-Schlüssel zurück.

SetJniIdentityHashCode(Int32)

Legen Sie den von JniIdentityHashCodezurückgegebenen Wert fest.

(Geerbt von IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

Ein Token, das die Registrierung eines Watchable watchable -Objekts mit einem WatchServicedarstellt.

(Geerbt von IJavaPeerable)
SetPeerReference(JniObjectReference)

Legen Sie den von PeerReferencezurückgegebenen Wert fest.

(Geerbt von IJavaPeerable)
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 Watchable watchable -Objekts mit einem WatchServicedarstellt.

GetJniTypeName(IJavaPeerable)

Ein Token, das die Registrierung eines Watchable watchable -Objekts mit einem WatchServicedarstellt.

Gilt für: