Partilhar via


GZipStream.ReadAsync Método

Definição

Sobrecargas

Nome Description
ReadAsync(Memory<Byte>, CancellationToken)

Lê de forma assíncrona uma sequência de bytes do fluxo GZip atual em uma região de memória de bytes, avança a posição dentro do fluxo GZip pelo número de bytes lidos e monitora solicitações de cancelamento.

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

Lê de forma assíncrona uma sequência de bytes do fluxo GZip atual em uma matriz de bytes, avança a posição dentro do fluxo GZip pelo número de bytes lidos e monitora solicitações de cancelamento.

ReadAsync(Memory<Byte>, CancellationToken)

Origem:
GZipStream.cs
Origem:
GZipStream.cs
Origem:
GZipStream.cs
Origem:
GZipStream.cs
Origem:
GZipStream.cs

Lê de forma assíncrona uma sequência de bytes do fluxo GZip atual em uma região de memória de bytes, avança a posição dentro do fluxo GZip pelo número de bytes lidos e monitora solicitações de cancelamento.

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)

Parâmetros

buffer
Memory<Byte>

A região da memória na qual gravar os dados.

cancellationToken
CancellationToken

O token a ser monitorado para solicitações de cancelamento. O valor padrão é None.

Retornos

Uma tarefa que representa a operação de leitura assíncrona, que encapsula o número total de bytes lidos no buffer. O valor do resultado pode ser menor do que o número de bytes alocados no buffer se muitos bytes não estiverem disponíveis no momento ou pode ser 0 (zero) se o final do fluxo GZip tiver sido atingido.

Exceções

O token de cancelamento foi cancelado. Essa exceção é armazenada na tarefa retornada.

Comentários

Importante

A partir do .NET 6, esse método pode não ler tantos bytes quanto solicitado. Para obter mais informações, consulte leituras parciais e de bytes zero em DeflateStream, GZipStream e CryptoStream.

O ReadAsync método permite que você execute operações de E/S com uso intensivo de recursos sem bloquear o thread principal. Essa consideração de desempenho é particularmente importante em aplicativos da área de trabalho em que uma operação de fluxo demorada pode bloquear o thread da interface do usuário e fazer com que o aplicativo apareça como se não estivesse funcionando. Os métodos assíncronos são usados em conjunto com as palavras-chave async e await em Visual Basic e C#.

Use a CanRead propriedade para determinar se a instância atual dá suporte à leitura.

Se a operação for cancelada antes de ser concluída, a tarefa retornada conterá o TaskStatus.Canceled valor da Task.Status propriedade.

Aplica-se a

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

Origem:
GZipStream.cs
Origem:
GZipStream.cs
Origem:
GZipStream.cs
Origem:
GZipStream.cs
Origem:
GZipStream.cs

Lê de forma assíncrona uma sequência de bytes do fluxo GZip atual em uma matriz de bytes, avança a posição dentro do fluxo GZip pelo número de bytes lidos e monitora solicitações de cancelamento.

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> ^ array, 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);
public override System.Threading.Tasks.Task<int> ReadAsync(byte[] array, 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, count As Integer, cancellationToken As CancellationToken) As Task(Of Integer)
Public Overrides Function ReadAsync (array As Byte(), offset As Integer, count As Integer, cancellationToken As CancellationToken) As Task(Of Integer)

Parâmetros

arraybuffer
Byte[]

O buffer no qual gravar os dados.

offset
Int32

O deslocamento de bytes no qual começar a gravar dados do fluxo GZip.

count
Int32

O número máximo de bytes a serem lidos.

cancellationToken
CancellationToken

O token a ser monitorado para solicitações de cancelamento. O valor padrão é None.

Retornos

Uma tarefa que representa a operação de leitura assíncrona, que encapsula o número total de bytes lidos. O valor do resultado pode ser menor do que o número de bytes solicitados se o número de bytes atualmente disponível for menor que o número solicitado ou pode ser 0 (zero) se o final do fluxo GZip tiver sido atingido.

Exceções

O token de cancelamento foi cancelado. Essa exceção é armazenada na tarefa retornada.

Comentários

Importante

A partir do .NET 6, esse método pode não ler tantos bytes quanto solicitado. Para obter mais informações, consulte leituras parciais e de bytes zero em DeflateStream, GZipStream e CryptoStream.

O ReadAsync método permite que você execute operações de E/S com uso intensivo de recursos sem bloquear o thread principal. Essa consideração de desempenho é particularmente importante em aplicativos da área de trabalho em que uma operação de fluxo demorada pode bloquear o thread da interface do usuário e fazer com que o aplicativo apareça como se não estivesse funcionando. Os métodos assíncronos são usados em conjunto com as palavras-chave async e await em Visual Basic e C#.

Use a CanRead propriedade para determinar se a instância atual dá suporte à leitura.

Se a operação for cancelada antes de ser concluída, a tarefa retornada conterá o TaskStatus.Canceled valor da Task.Status propriedade.

Esse método armazena na tarefa que retorna todas as exceções de não uso que o equivalente síncrono do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por Read(Byte[], Int32, Int32).

Aplica-se a