MemoryStream.ReadAsync Metódus

Definíció

Túlterhelések

Name Description
ReadAsync(Memory<Byte>, CancellationToken)

Aszinkron módon beolvassa a bájtok sorozatát az aktuális memóriastreamből, beírja a sorozatot a memóriába destination, előrelép a memóriastreamben az olvasási bájtok számával, és figyeli a lemondási kérelmeket.

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

Aszinkron módon beolvassa a bájtok sorozatát az aktuális adatfolyamból, az olvasási bájtok számával előrelép a streamben, és figyeli a lemondási kérelmeket.

ReadAsync(Memory<Byte>, CancellationToken)

Forrás:
MemoryStream.cs
Forrás:
MemoryStream.cs
Forrás:
MemoryStream.cs
Forrás:
MemoryStream.cs
Forrás:
MemoryStream.cs

Aszinkron módon beolvassa a bájtok sorozatát az aktuális memóriastreamből, beírja a sorozatot a memóriába destination, előrelép a memóriastreamben az olvasási bájtok számával, és figyeli a lemondási kérelmeket.

public override System.Threading.Tasks.ValueTask<int> ReadAsync(Memory<byte> buffer, System.Threading.CancellationToken cancellationToken = default);
public override System.Threading.Tasks.ValueTask<int> ReadAsync(Memory<byte> destination, System.Threading.CancellationToken cancellationToken = default);
override this.ReadAsync : Memory<byte> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
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)
Public Overrides Function ReadAsync (destination As Memory(Of Byte), Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)

Paraméterek

destinationbuffer
Memory<Byte>

Az adatok írásához használandó memóriaterület.

cancellationToken
CancellationToken

A lemondási kérelmek figyelésére szolgáló jogkivonat. Az alapértelmezett érték a None.

Válaszok

Az aszinkron olvasási műveletet képviselő feladat. A tulajdonság értéke Result a beolvasott bájtok teljes számát tartalmazza.destination Az eredmény értéke kisebb lehet, mint a lefoglalt destination bájtok száma, ha az adott számú bájt jelenleg nem érhető el, vagy 0 (nulla) lehet, ha a memóriafolyam vége el lett érve.

Kivételek

A lemondási jogkivonat megszakadt. Ezt a kivételt a rendszer a visszaadott tevékenységben tárolja.

A következőre érvényes:

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

Forrás:
MemoryStream.cs
Forrás:
MemoryStream.cs
Forrás:
MemoryStream.cs
Forrás:
MemoryStream.cs
Forrás:
MemoryStream.cs

Aszinkron módon beolvassa a bájtok sorozatát az aktuális adatfolyamból, az olvasási bájtok számával előrelép a streamben, és figyeli a lemondási kérelmeket.

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 count, System.Threading.CancellationToken cancellationToken);
[System.Runtime.InteropServices.ComVisible(false)]
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>
[<System.Runtime.InteropServices.ComVisible(false)>]
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)

Paraméterek

buffer
Byte[]

A puffer, amelybe beírja az adatokat.

offset
Int32

A bájteltolódás buffer , amelynél megkezdheti az adatok írását a streamből.

count
Int32

Az elolvasandó bájtok maximális száma.

cancellationToken
CancellationToken

A lemondási kérelmek figyelésére szolgáló jogkivonat. Az alapértelmezett érték a None.

Válaszok

Az aszinkron olvasási műveletet képviselő feladat. A paraméter értéke a TResult pufferbe beolvasott bájtok teljes számát tartalmazza. Az eredmény értéke kisebb lehet, mint a kért bájtok száma, ha a jelenleg elérhető bájtok száma kisebb a kért számnál, vagy 0 (nulla) lehet, ha a stream vége el lett érve.

Attribútumok

Kivételek

buffer az null.

offset vagy count negatív.

A puffer hosszánál nagyobb és offset nagyobb összegcount.

A stream nem támogatja az olvasást.

A stream el lett dobva.

A streamet jelenleg egy korábbi olvasási művelet használja.

A lemondási jogkivonat megszakadt. Ezt a kivételt a rendszer a visszaadott tevékenységben tárolja.

Megjegyzések

Ha a művelet befejeződése előtt megszakítja a műveletet, a visszaadott tevékenység tartalmazza a CanceledStatus tulajdonság értékét.

A lemondási jogkivonatot az osztály egy példányának CancellationTokenSource létrehozásával és a Token tulajdonság paraméterként cancellationToken való átadásával hozhatja létre.

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: .

A következőre érvényes: