UsbDeviceConnection.RequestWaitAsync Methode
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.
Überlädt
| Name | Beschreibung |
|---|---|
| RequestWaitAsync() |
Führt eine unbestimmte Wartezeit für eine in die Warteschlange eingereihte USB-Anforderung aus, die in einer Aufgabe abgeschlossen ist. |
| RequestWaitAsync(Int64) |
Führt eine Wartezeit für eine in die Warteschlange eingereihte USB-Anforderung mit einem Timeout in einer Aufgabe aus. |
RequestWaitAsync()
Führt eine unbestimmte Wartezeit für eine in die Warteschlange eingereihte USB-Anforderung aus, die in einer Aufgabe abgeschlossen ist.
public System.Threading.Tasks.Task<Android.Hardware.Usb.UsbRequest?> RequestWaitAsync();
member this.RequestWaitAsync : unit -> System.Threading.Tasks.Task<Android.Hardware.Usb.UsbRequest>
Gibt zurück
Eine Aufgabe, deren Ergebnis eine abgeschlossene USB-Anforderung ist oder null ein Fehler aufgetreten ist.
Hinweise
Diese .NET Methode verwendetRun<TResult>(Func<TResult>), um aufzurufenRequestWait(). Sie kann Anforderungen von einem beliebigen Endpunkt für diese Verbindung zurückgeben. Verwenden Sie die zurückgegebenen Anforderungen Endpoint , und ClientData identifizieren Sie den Vorgang.
Ausnahmen vom Wartefehler der Aufgabe. Bei Anforderungen in die Warteschlange mit Queue(ByteBuffer, int), wenn eine Übertragung den Grenzwert des Anforderungspuffers überschreitet, Android 8 (API-Ebene 26) und höher für BufferOverflowException Anwendungen, die auf API-Ebene 26 oder höher abzielen, und IllegalArgumentException für Anwendungen, die auf frühere API-Ebenen abzielen. Frühere Android-Versionen lösen unabhängig von der Ziel-API-Ebene der Anwendung aus IllegalArgumentException .
Implementierungsquellen: .NET Taskwrapper-Generator und Android-USB-Verbindungsimplementierung.
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.
Gilt für:
RequestWaitAsync(Int64)
Führt eine Wartezeit für eine in die Warteschlange eingereihte USB-Anforderung mit einem Timeout in einer Aufgabe aus.
public System.Threading.Tasks.Task<Android.Hardware.Usb.UsbRequest?> RequestWaitAsync(long timeout);
member this.RequestWaitAsync : int64 -> System.Threading.Tasks.Task<Android.Hardware.Usb.UsbRequest>
Parameter
- timeout
- Int64
Das nichtegative Wartezeittimeout in Millisekunden. Nullprüfungen für eine abgeschlossene Anforderung ohne Warten; es bedeutet keine unendliche Wartezeit.
Gibt zurück
Eine Aufgabe, deren Ergebnis eine abgeschlossene USB-Anforderung ist oder null ein Fehler aufgetreten ist. Wenn keine Anforderung innerhalb des Timeouts abgeschlossen ist, ist die Aufgabe fehlerhaft mit TimeoutException.
Hinweise
Diese .NET Methode verwendetRun<TResult>(Func<TResult>), um aufzurufenRequestWait(Int64). Das Timeout gilt, wenn dieser Aufruf ausgeführt wird, nicht, wenn die Aufgabe erstellt wird. Diese Überladung erfordert Android 8 (API-Ebene 26) oder höher.
Das Ergebnis kann eine Anforderung von einem beliebigen Endpunkt für diese Verbindung sein. Verwenden Sie die zurückgegebenen Anforderungen Endpoint , und ClientData identifizieren Sie den Vorgang. Ein Nulltimeout kann eine neu in die Warteschlange eingereihte Anforderung verpassen, da Android Anforderungen asynchron verarbeitet.
Ausnahmen vom Wartefehler der Aufgabe. Ein negatives Timeout verursacht IllegalArgumentException. Wenn eine Übertragung den Grenzwert des Anforderungspuffers überschreitet, wird bei Anforderungen, die mit Queue(ByteBuffer, int)der Warteschlange in die Warteschlange gestellt werden, die Wartezeit ausgelöst BufferOverflowException.
Implementierungsquellen: .NET Taskwrapper-Generator und Android-USB-Verbindungsimplementierung.
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.