MemoryStream.ReadAsync Metod

Definition

Överlagringar

Name Description
ReadAsync(Memory<Byte>, CancellationToken)

Läser asynkront en sekvens med byte från den aktuella minnesströmmen, skriver sekvensen till destination, avancerar positionen i minnesströmmen med antalet lästa byte och övervakar begäranden om annullering.

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

Läser asynkront en sekvens med byte från den aktuella strömmen, avancerar positionen i strömmen med antalet lästa byte och övervakar begäranden om annullering.

ReadAsync(Memory<Byte>, CancellationToken)

Läser asynkront en sekvens med byte från den aktuella minnesströmmen, skriver sekvensen till destination, avancerar positionen i minnesströmmen med antalet lästa byte och övervakar begäranden om annullering.

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>
Public Overrides Function ReadAsync (destination As Memory(Of Byte), Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)

Parametrar

destinationbuffer
Memory<Byte>

Den region av minne som data ska skrivas till.

cancellationToken
CancellationToken

Token som ska övervakas för annulleringsbegäranden. Standardvärdet är None.

Returer

En uppgift som representerar den asynkrona läsåtgärden. Värdet för egenskapen Result innehåller det totala antalet byte som lästs in i destination. Resultatvärdet kan vara mindre än antalet byte som allokerats i destination om så många byte inte är tillgängliga för närvarande, eller om det kan vara 0 (noll) om slutet av minnesströmmen har nåtts.

Undantag

Annulleringstoken avbröts. Det här undantaget lagras i den returnerade aktiviteten.

Gäller för

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

Läser asynkront en sekvens med byte från den aktuella strömmen, avancerar positionen i strömmen med antalet lästa byte och övervakar begäranden om annullering.

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)

Parametrar

buffer
Byte[]

Bufferten som data ska skrivas till.

offset
Int32

Byteförskjutningen buffer där du börjar skriva data från dataströmmen.

count
Int32

Det maximala antalet byte som ska läsas.

cancellationToken
CancellationToken

Token som ska övervakas för annulleringsbegäranden. Standardvärdet är None.

Returer

En uppgift som representerar den asynkrona läsåtgärden. Värdet för parametern TResult innehåller det totala antalet byte som lästs in i bufferten. Resultatvärdet kan vara mindre än det antal byte som begärs om antalet tillgängliga byte för närvarande är mindre än det begärda talet, eller om det kan vara 0 (noll) om strömmens slut har nåtts.

Attribut

Undantag

buffer är null.

offset eller count är negativ.

Summan av offset och count är större än buffertlängden.

Strömmen stöder inte läsning.

Strömmen har tagits bort.

Strömmen används för närvarande av en tidigare läsåtgärd.

Annulleringstoken avbröts. Det här undantaget lagras i den returnerade aktiviteten.

Kommentarer

Om åtgärden avbryts innan den slutförs innehåller Canceled den returnerade aktiviteten värdet för Status egenskapen.

Du kan skapa en annulleringstoken genom att skapa en instans av CancellationTokenSource klassen och skicka Token egenskapen som cancellationToken parameter.

Den här metoden lagrar i aktiviteten som returnerar alla undantag som inte används som metodens synkrona motsvarighet kan utlösa. Om ett undantag lagras i den returnerade aktiviteten utlöses undantaget när aktiviteten väntar. Användningsfel, till exempel ArgumentException, genereras fortfarande synkront. De lagrade undantagen finns i undantagen som genereras av Read(Byte[], Int32, Int32).

Gäller för