SelectionKey Klasse
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 einer mit einer SelectableChannelSelector.
[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
- Vererbung
- Abgeleitet
- Attribute
Hinweise
Ein Token, das die Registrierung einer mit einer SelectableChannelSelector.
Jedes Mal, wenn ein Kanal mit einer Auswahl registriert wird, wird ein Auswahlschlüssel erstellt. Ein Schlüssel bleibt gültig, bis er durch Aufrufen der #cancel cancel Methode, durch Schließen des Kanals oder durch Schließen des Selektors abgebrochen wird. Durch das Abbrechen einer Taste wird sie nicht sofort aus der Auswahl entfernt. sie wird stattdessen zur Entfernung während des nächsten Auswahlvorgangs <dem i-Löschschlüsselsatz></i> hinzugefügt. Die Gültigkeit eines Schlüssels kann durch Aufrufen seiner #isValid isValid Methode geprüft werden.
"opsets">
Ein Auswahlschlüssel enthält zwei Vorgangssätze , die als ganzzahlige Werte dargestellt werden. Jedes Bit eines Vorgangssatzes bezeichnet eine Kategorie von auswählbaren Vorgängen, die vom Kanal des Schlüssels unterstützt werden.
<Ul>
<li>
Der Interessensatz bestimmt, welche Vorgangskategorien für die Bereitschaft getestet werden, wenn eine der Auswahlmethoden des Selektors das nächste Mal aufgerufen wird. Der Zinssatz wird mit dem Wert initialisiert, der angegeben wird, wenn der Schlüssel erstellt wird; sie kann später über die #interestOps(int) Methode geändert werden.
</li>
<li>
Der fertige Satz identifiziert die Vorgangskategorien, für die der Kanal des Schlüssels erkannt wurde, um vom Selektor des Schlüssels bereit zu sein. Der fertige Satz wird beim Erstellen des Schlüssels auf Null initialisiert. sie kann später von der Selektorin während eines Auswahlvorgangs aktualisiert werden, kann aber nicht direkt aktualisiert werden.
</li>
</ul>
Dass der fertige Satz eines Auswahlschlüssels angibt, dass sein Kanal für eine Bestimmte Vorgangskategorie bereit ist, ist ein Hinweis, aber keine Garantie, dass ein Vorgang in einer solchen Kategorie von einem Thread ausgeführt werden kann, ohne dass der Thread blockiert wird. Ein bereiter Satz ist wahrscheinlich unmittelbar nach Abschluss eines Auswahlvorgangs genau. Es wird wahrscheinlich durch externe Ereignisse und durch E/A-Vorgänge ungenau gemacht, die auf den entsprechenden Kanal aufgerufen werden.
Diese Klasse definiert alle bekannten Vorgangssatzbits, aber genau welche Bits von einem bestimmten Kanal unterstützt werden, hängt vom Typ des Kanals ab. Jede Unterklasse von SelectableChannel definiert eine SelectableChannel#validOps() validOps() Methode, die einen Satz zurückgibt, der nur diejenigen Vorgänge identifiziert, die vom Kanal unterstützt werden. Ein Versuch, ein Vorgangssatzbit festzulegen oder zu testen, das vom Kanal eines Schlüssels nicht unterstützt wird, führt zu einer geeigneten Laufzeit ausnahme.
Es ist häufig erforderlich, einige anwendungsspezifische Daten einem Auswahlschlüssel zuzuordnen, z. B. ein Objekt, das den Status eines Protokolls auf höherer Ebene darstellt und Bereitschaftsbenachrichtigungen verarbeitet, um dieses Protokoll zu implementieren. Auswahltasten unterstützen daher die Anlage eines einzelnen beliebigen Objekts an einen Schlüssel. Ein Objekt kann über die #attach attach Methode angefügt und später über die #attachment() attachment Methode abgerufen werden.
Auswahltasten sind sicher für die Verwendung durch mehrere gleichzeitige Threads. Bei einem Auswahlvorgang wird immer der Zinssatzwert verwendet, der zum Zeitpunkt des Beginns des Vorgangs aktuell war.
In 1.4 hinzugefügt.
Java Dokumentation für java.nio.channels.SelectionKey.
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.
Konstruktoren
| Name | Beschreibung |
|---|---|
| SelectionKey() |
Erstellt eine Instanz dieser Klasse. |
| SelectionKey(IntPtr, JniHandleOwnership) |
Ein Konstruktor, der beim Erstellen verwalteter Darstellungen von JNI-Objekten verwendet wird; wird von der Laufzeit aufgerufen. |
Felder
| Name | Beschreibung |
|---|---|
| OpAccept |
Veraltet.
Operation set bit for socket-accept operations. |
| OpConnect |
Veraltet.
Operation set bit for socket-connect operations. |
| OpRead |
Veraltet.
Bit des Vorgangssatzes für Lesevorgänge. |
| OpWrite |
Veraltet.
Operation set bit for write operations. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Class |
Gibt die Laufzeitklasse dieses Werts |
| Handle |
Das Handle für die zugrunde liegende Android-Instanz. (Geerbt von Object) |
| IsAcceptable |
Testet, ob der Kanal dieses Schlüssels bereit ist, eine neue Socketverbindung zu akzeptieren. |
| IsConnectable |
Testet, ob der Kanal dieses Schlüssels den Socketverbindungsvorgang abgeschlossen oder nicht abgeschlossen hat. |
| IsReadable |
Testet, ob der Kanal dieses Schlüssels zum Lesen bereit ist. |
| IsValid |
Gibt an, ob dieser Schlüssel gültig ist. |
| IsWritable |
Testet, ob der Kanal dieses Schlüssels zum Schreiben bereit ist. |
| JniIdentityHashCode |
Ruft den Identitätshashcode ab, der diesem Java Peer von der Interop-Laufzeit zugewiesen ist. (Geerbt von Object) |
| JniManagedPeerState |
Ein Token, das die Registrierung einer mit einer |
| JniPeerMembers |
Ein Token, das die Registrierung einer mit einer |
| PeerReference |
Ruft den JNI-Objektverweis für diesen Java Peer ab. (Geerbt von Object) |
| ThresholdClass |
Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. |
| ThresholdType |
Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. |
Methoden
| Name | Beschreibung |
|---|---|
| Attach(Object) |
Fügt das angegebene Objekt an diesen Schlüssel an. |
| Attachment() |
Ruft die aktuelle Anlage ab. |
| Cancel() |
Fordert an, dass die Registrierung des Kanals dieses Schlüssels mit der Auswahl abgebrochen wird. |
| Channel() |
Gibt den Kanal zurück, für den dieser Schlüssel erstellt wurde. |
| Clone() |
Erstellt und gibt eine Kopie dieses Objekts zurück. (Geerbt von Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Ein Token, das die Registrierung einer mit einer |
| Dispose() |
Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden. (Geerbt von Object) |
| Dispose(Boolean) |
Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden. (Geerbt von Object) |
| DisposeUnlessReferenced() |
Ein Token, das die Registrierung einer mit einer |
| Equals(Object) |
Ein Token, das die Registrierung einer mit einer |
| Equals(Object) |
Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist. (Geerbt von Object) |
| GetHashCode() |
Gibt einen Hashcodewert für das Objekt zurück. (Geerbt von Object) |
| InterestOps() |
Ruft den Interessensatz dieses Schlüssels ab. |
| InterestOps(Operations) |
Ruft den Interessensatz dieses Schlüssels ab. |
| InterestOpsAnd(Int32) |
Atomisch legt das Interesse dieses Schlüssels auf die bitweise Schnittmenge ("und") des vorhandenen Interessensatzes und den angegebenen Wert fest. |
| InterestOpsOr(Int32) |
Atomisch legt das Interesse dieses Schlüssels auf die bitweise Vereinigung ("oder") des vorhandenen Zinssatzes und den angegebenen Wert fest. |
| JavaFinalize() |
Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection bestimmt, dass keine weiteren Verweise auf das Objekt vorhanden sind. (Geerbt von Object) |
| Notify() |
Aktiviert einen einzelnen Thread, der auf dem Monitor dieses Objekts wartet. (Geerbt von Object) |
| NotifyAll() |
Aktiviert alle Threads, die auf dem Monitor dieses Objekts warten. (Geerbt von Object) |
| ReadyOps() |
Ruft den Ready-Operation-Satz dieses Schlüssels ab. |
| Selector() |
Gibt die Auswahl zurück, für die dieser Schlüssel erstellt wurde. |
| SetHandle(IntPtr, JniHandleOwnership) |
Legt die Handle-Eigenschaft fest. (Geerbt von Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Ein Token, das die Registrierung einer mit einer |
| ToArray<T>() |
Erstellt ein verwaltetes Array aus diesem Java Arraywrapper. (Geerbt von Object) |
| ToString() |
Gibt eine Zeichenfolgendarstellung des Objekts zurück. (Geerbt von Object) |
| UnregisterFromRuntime() |
Hebt die Registrierung dieses Java Peers aus der Interop-Laufzeit auf. (Geerbt von Object) |
| Wait() |
Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch em benachrichtigt/em< oder >em<unterbrochen>/em<.><> (Geerbt von Object) |
| Wait(Int64, Int32) |
Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist. (Geerbt von Object) |
| Wait(Int64) |
Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist. (Geerbt von Object) |
Explizite Schnittstellenimplementierungen
| Name | Beschreibung |
|---|---|
| IJavaPeerable.Disposed() |
Ein Token, das die Registrierung einer mit einer |
| IJavaPeerable.Finalized() |
Ein Token, das die Registrierung einer mit einer |
| IJavaPeerable.JniObjectReferenceControlBlock |
Ein Token, das die Registrierung einer mit einer |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Ein Token, das die Registrierung einer mit einer |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Ein Token, das die Registrierung einer mit einer |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Ein Token, das die Registrierung einer mit einer |
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 einer mit einer |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Versuchen Sie, die Eingabe |