NetworkStream.ReadAsync Methode

Definition

Ü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)

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

buffer
Memory<Byte>

Der Puffer, in den die Daten geschrieben werden sollen.

cancellationToken
CancellationToken

Das Token zum Überwachen von Abbruchanforderungen.

Gibt zurück

ValueTask<Int32>

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.

Hinweise

Diese Methode liest so viele Daten wie verfügbar in buffer und gibt die Anzahl der Bytes zurück, die erfolgreich gelesen wurden.

Hinweis

Überprüfen Sie, ob die NetworkStream Eigenschaft durch Aufrufen der CanRead Eigenschaft lesbar ist. Wenn Sie versuchen, aus einer NetworkStream nicht lesbaren Datei zu lesen, erhalten Sie eine InvalidOperationException.

Hinweis

Wenn Sie eine IOException, überprüfen Sie die InnerException Eigenschaft, um zu ermitteln, ob sie durch eine SocketException. Wenn ja, verwenden Sie die ErrorCode Eigenschaft, um den spezifischen Fehlercode abzurufen und auf die Windows Sockets Version 2-API-Fehlercodedokumentation zu verweisen, um eine detaillierte Beschreibung des Fehlers zu erhalten.

Gilt für:

ReadAsync(Byte[], Int32, Int32, CancellationToken)

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

Task<Int32>

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.

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, bis zur Anzahl der by den size Parameter angegebenen Bytes.

Hinweis

Überprüfen Sie, ob die NetworkStream Eigenschaft durch Aufrufen der CanRead Eigenschaft lesbar ist. Wenn Sie versuchen, aus einer NetworkStream nicht lesbaren Datei zu lesen, erhalten Sie eine InvalidOperationException.

Hinweis

Wenn Sie eine IOException, überprüfen Sie die InnerException Eigenschaft, um zu ermitteln, ob sie durch eine SocketException. Wenn ja, verwenden Sie die ErrorCode Eigenschaft, um den spezifischen Fehlercode abzurufen und auf die Windows Sockets Version 2-API-Fehlercodedokumentation zu verweisen, um eine detaillierte Beschreibung des Fehlers zu erhalten.

Gilt für: