NetworkStream.ReadAsync Metódus
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Túlterhelések
| Name | Description |
|---|---|
| ReadAsync(Memory<Byte>, CancellationToken) |
Beolvassa az adatokat, NetworkStream és bájtmemóriatartományban tárolja aszinkron műveletként. |
| ReadAsync(Byte[], Int32, Int32, CancellationToken) |
Beolvassa az adatokat, NetworkStream és egy bájttömb megadott tartományában tárolja aszinkron műveletként. |
ReadAsync(Memory<Byte>, CancellationToken)
- Forrás:
- NetworkStream.cs
- Forrás:
- NetworkStream.cs
- Forrás:
- NetworkStream.cs
- Forrás:
- NetworkStream.cs
- Forrás:
- NetworkStream.cs
Beolvassa az adatokat, NetworkStream és bájtmemóriatartományban tárolja aszinkron műveletként.
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)
Paraméterek
- cancellationToken
- CancellationToken
A lemondási kérelmek figyelésére szolgáló jogkivonat.
Válaszok
Az ValueTask<TResult> aszinkron olvasási műveletet jelképező művelet. A tulajdonság értéke Result a nulla (0) és a kért bájtok száma között beolvasott buffer bájtok teljes számát tartalmazza. Az eredmény értéke csak akkor nulla (0), ha a rendszer nulla bájtot kért, vagy ha nem érhető el több bájt, mert a társcsatorna kecses leállítást hajtott végre. Ha nulla bájtot kérnek, az olvasási műveletek azonnal befejeződhetnek, vagy nem fejeződhetnek be, amíg legalább egy bájt el nem érhető (de adatok felhasználása nélkül).
Kivételek
Ez NetworkStream nem támogatja az olvasást.
A NetworkStream lezárva.
A lemondási jogkivonat megszakadt. Ezt a kivételt a rendszer a visszaadott tevékenységben tárolja.
Megjegyzések
Ez a metódus annyi adatot olvas be, amennyit csak lehet buffer , és visszaadja a sikeresen beolvasott bájtok számát.
Note
Ellenőrizze, hogy olvasható-e a NetworkStream tulajdonság meghívásával CanRead . Ha olyan szövegből NetworkStream próbál olvasni, amely nem olvasható, egy InvalidOperationException.
Note
Ha kap egy tulajdonságot IOException, ellenőrizze a InnerException tulajdonságot annak megállapításához, hogy a tulajdonságot egy SocketException. Ha igen, a ErrorCode tulajdonsággal szerezze be az adott hibakódot, és a hiba részletes leírásához tekintse meg a Windows Sockets 2-es verziójú API hibakódját dokumentációt.
A következőre érvényes:
ReadAsync(Byte[], Int32, Int32, CancellationToken)
- Forrás:
- NetworkStream.cs
- Forrás:
- NetworkStream.cs
- Forrás:
- NetworkStream.cs
- Forrás:
- NetworkStream.cs
- Forrás:
- NetworkStream.cs
Beolvassa az adatokat, NetworkStream és egy bájttömb megadott tartományában tárolja aszinkron műveletként.
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(cli::array <System::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);
public override System.Threading.Tasks.Task<int> ReadAsync(byte[] buffer, int offset, int size, 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, count As Integer, cancellationToken As CancellationToken) As Task(Of Integer)
Public Overrides Function ReadAsync (buffer As Byte(), offset As Integer, size As Integer, cancellationToken As CancellationToken) As Task(Of Integer)
Paraméterek
- buffer
- Byte[]
A puffer, amelybe beírja az adatokat.
- offset
- Int32
Az adatok tárolásának megkezdéséhez megadott hely buffer .
- countsize
- Int32
A beolvasandó bájtok száma a NetworkStream.
- cancellationToken
- CancellationToken
A lemondási kérelmek figyelésére szolgáló jogkivonat.
Válaszok
Az aszinkron olvasási műveletet képviselő feladat. A tulajdonság értéke Result a nulla (0) és a kért bájtok száma között beolvasott buffer bájtok teljes számát tartalmazza. Az eredmény értéke csak akkor nulla (0), ha a rendszer nulla bájtot kért, vagy ha nem érhető el több bájt, mert a társcsatorna kecses leállítást hajtott végre. Ha nulla bájtot kérnek, az olvasási műveletek azonnal befejeződhetnek, vagy nem fejeződhetnek be, amíg legalább egy bájt el nem érhető (de adatok felhasználása nélkül).
Kivételek
Ez NetworkStream nem támogatja az olvasást.
A NetworkStream lezárva.
A lemondási jogkivonat megszakadt. Ezt a kivételt a rendszer a visszaadott tevékenységben tárolja.
Megjegyzések
Ez a metódus beolvassa az adatokat buffer , és visszaadja a sikeresen beolvasott bájtok számát. A ReadAsync művelet annyi adatot olvas be, amennyit csak lehet, a paraméter által count megadott bájtszámig.
Note
Ellenőrizze, hogy olvasható-e a NetworkStream tulajdonság meghívásával CanRead . Ha olyan szövegből NetworkStream próbál olvasni, amely nem olvasható, egy InvalidOperationException.
Note
Ha kap egy tulajdonságot IOException, ellenőrizze a InnerException tulajdonságot annak megállapításához, hogy a tulajdonságot egy SocketException. Ha igen, a ErrorCode tulajdonsággal szerezze be az adott hibakódot, és a hiba részletes leírásához tekintse meg a Windows Sockets 2-es verziójú API hibakódját dokumentációt.
Ez a metódus a feladatban tárolja az összes olyan nem használati kivételt, amelyet a metódus szinkron megfelelője tud dobni. Ha egy kivételt tárol a visszaadott tevékenységben, akkor a rendszer akkor küldi el a kivételt, amikor a feladatra vár. A használati kivételek(például ArgumentException) továbbra is szinkron módon jelennek meg. A tárolt kivételekről lásd a következő által Read(Byte[], Int32, Int32)kiadott kivételeket: .