NetworkStream.ReadAsync 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
ReadAsync(Memory<Byte>, CancellationToken) |
Liest Daten aus NetworkStream und speichert sie als asynchronen Vorgang in einem Bytespeicherbereich. |
ReadAsync(Byte[], Int32, Int32, CancellationToken) |
Liest Daten aus NetworkStream und speichert sie als asynchronen Vorgang in einen festgelegten Bereich eines Bytearrays. |
ReadAsync(Memory<Byte>, CancellationToken)
- Quelle:
- NetworkStream.cs
- Quelle:
- NetworkStream.cs
- Quelle:
- NetworkStream.cs
Liest Daten aus NetworkStream und speichert sie als asynchronen Vorgang in einem Bytespeicherbereich.
public override System.Threading.Tasks.ValueTask<int> ReadAsync (Memory<byte> buffer, System.Threading.CancellationToken cancellationToken = default);
override this.ReadAsync : Memory<byte> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Overrides Function ReadAsync (buffer As Memory(Of Byte), Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)
Parameter
- cancellationToken
- CancellationToken
Das Token zum Überwachen von Abbruchanforderungen.
Gibt zurück
Eine ValueTask<TResult>, die den asynchronen Lesevorgang darstellt. Der Wert seiner Result-Eigenschaft enthält die Gesamtzahl der Bytes, die in buffer
gelesen werden.
Ausnahmen
Lesevorgänge werden von NetworkStream nicht unterstützt.
Beim Zugreifen auf den Socket ist ein Fehler aufgetreten.
- oder -
Beim Lesen aus dem Netzwerk tritt ein Fehler auf.
Der NetworkStream ist geschlossen.
Das Abbruchtoken wurde abgebrochen. Diese Ausnahme wird in der zurückgegebenen Aufgabe gespeichert.
Hinweise
Diese Methode liest so viele Daten, wie verfügbar sind, und buffer
gibt die Anzahl der Bytes zurück, die erfolgreich gelesen wurden.
Hinweis
Überprüfen Sie, ob die NetworkStream lesbar ist, indem Sie die CanRead -Eigenschaft aufrufen. Wenn Sie versuchen, aus einem NetworkStream zu lesen, das nicht lesbar ist, erhalten Sie eine InvalidOperationException.
Hinweis
Wenn Sie eine IOExceptionerhalten, überprüfen Sie die InnerException -Eigenschaft, um zu ermitteln, ob sie durch ein SocketExceptionverursacht wurde. Wenn ja, verwenden Sie die ErrorCode -Eigenschaft, um den spezifischen Fehlercode abzurufen. Eine ausführliche Beschreibung des Fehlers finden Sie in der Dokumentation zum API-Code der Windows Sockets Version 2 .
Gilt für:
ReadAsync(Byte[], Int32, Int32, CancellationToken)
- Quelle:
- NetworkStream.cs
- Quelle:
- NetworkStream.cs
- Quelle:
- NetworkStream.cs
Liest Daten aus NetworkStream und speichert sie als asynchronen Vorgang in einen festgelegten Bereich eines Bytearrays.
public:
override System::Threading::Tasks::Task<int> ^ ReadAsync(cli::array <System::Byte> ^ buffer, int offset, int size, System::Threading::CancellationToken cancellationToken);
public:
override System::Threading::Tasks::Task<int> ^ ReadAsync(cli::array <System::Byte> ^ buffer, int offset, int count, System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<int> ReadAsync (byte[] buffer, int offset, int size, System.Threading.CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<int> ReadAsync (byte[] buffer, int offset, int count, System.Threading.CancellationToken cancellationToken);
override this.ReadAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
override this.ReadAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
Public Overrides Function ReadAsync (buffer As Byte(), offset As Integer, size As Integer, cancellationToken As CancellationToken) As Task(Of Integer)
Public Overrides Function ReadAsync (buffer As Byte(), offset As Integer, count As Integer, cancellationToken As CancellationToken) As Task(Of Integer)
Parameter
- buffer
- Byte[]
Der Puffer, in den die Daten geschrieben werden sollen.
- offset
- Int32
Die Position im buffer
, an der mit dem Speichern der Daten begonnen werden soll.
- sizecount
- Int32
Die Anzahl der aus dem NetworkStream zu lesenden Bytes.
- cancellationToken
- CancellationToken
Das Token zum Überwachen von Abbruchanforderungen.
Gibt zurück
Eine Aufgabe, die den asynchronen Lesevorgang darstellt. Der Wert seiner Result-Eigenschaft enthält die Gesamtzahl der Bytes, die in buffer
gelesen werden.
Ausnahmen
Lesevorgänge werden von NetworkStream nicht unterstützt.
Beim Zugreifen auf den Socket ist ein Fehler aufgetreten.
- oder -
Beim Lesen aus dem Netzwerk tritt ein Fehler auf.
Der NetworkStream ist geschlossen.
Das Abbruchtoken wurde abgebrochen. Diese Ausnahme wird in der zurückgegebenen Aufgabe gespeichert.
Hinweise
Diese Methode liest Daten in buffer
und gibt die Anzahl der Bytes zurück, die erfolgreich gelesen wurden. Der ReadAsync
Vorgang liest so viele Daten, wie verfügbar sind, bis zur Anzahl von Bytes, die durch den size
Parameter angegeben werden.
Hinweis
Überprüfen Sie, ob die NetworkStream lesbar ist, indem Sie die CanRead -Eigenschaft aufrufen. Wenn Sie versuchen, aus einem NetworkStream zu lesen, das nicht lesbar ist, erhalten Sie eine InvalidOperationException.
Hinweis
Wenn Sie eine IOExceptionerhalten, überprüfen Sie die InnerException -Eigenschaft, um zu ermitteln, ob sie durch ein SocketExceptionverursacht wurde. Wenn ja, verwenden Sie die ErrorCode -Eigenschaft, um den spezifischen Fehlercode abzurufen. Eine ausführliche Beschreibung des Fehlers finden Sie in der Dokumentation zum API-Code der Windows Sockets Version 2 .
Diese Methode speichert in der Aufgabe, die sie alle Nichtverwendungsausnahmen zurückgibt, die die synchrone Entsprechung der Methode auslösen kann. Wenn eine Ausnahme in der zurückgegebenen Aufgabe gespeichert wird, wird diese Ausnahme ausgelöst, wenn die Aufgabe erwartet wird. Nutzungsausnahmen, z. B ArgumentException. , werden weiterhin synchron ausgelöst. Informationen zu den gespeicherten Ausnahmen finden Sie unter die von ausgelösten Read(Byte[], Int32, Int32)Ausnahmen.