Deflater.DeflateAsync Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Sobrecargas
| Nome | Description |
|---|---|
| DeflateAsync(ByteBuffer) |
Executa a compactação em um buffer de bytes como uma tarefa. |
| DeflateAsync(Byte[]) |
Executa a compactação em uma matriz de bytes como uma tarefa. |
| DeflateAsync(ByteBuffer, Int32) |
Executa a compactação em um buffer de bytes com o modo de liberação especificado como uma tarefa. |
| DeflateAsync(Byte[], Int32, Int32) |
Executa a compactação em um intervalo de matriz de bytes como uma tarefa. |
| DeflateAsync(Byte[], Int32, Int32, Int32) |
Executa a compactação em um intervalo de matriz de bytes com o modo de liberação especificado como uma tarefa. |
DeflateAsync(ByteBuffer)
Executa a compactação em um buffer de bytes como uma tarefa.
public System.Threading.Tasks.Task<int> DeflateAsync(Java.Nio.ByteBuffer? output);
member this.DeflateAsync : Java.Nio.ByteBuffer -> System.Threading.Tasks.Task<int>
Parâmetros
- output
- ByteBuffer
O buffer gravável que recebe bytes compactados entre sua posição atual e seu limite.
Retornos
Uma tarefa cujo resultado é o número de bytes compactados gravados output, não o número de bytes de entrada consumidos.
Comentários
Esse wrapper .NET usa Task.Run para chamar Deflate(ByteBuffer) com NoFlush. Ele não usa uma operação assíncrona nativa.
A posição de saída avança pelo número de bytes gravados. Se a entrada foi fornecida como um buffer de bytes, sua posição avança pelo número de bytes consumidos. Aguarde a conclusão da tarefa antes de alterar esses buffers ou usar esse compressor novamente.
Um resultado de zero não significa por si só que a compactação está concluída. Verifique NeedsInput() e Finished()forneça espaço de saída conforme necessário. Exceções da chamada síncrona são relatadas por meio da tarefa.
.NET implementação de wrapper assíncrono.
Implementação de compactação do Android.
Aplica-se a
DeflateAsync(Byte[])
Executa a compactação em uma matriz de bytes como uma tarefa.
public System.Threading.Tasks.Task<int> DeflateAsync(byte[]? output);
member this.DeflateAsync : byte[] -> System.Threading.Tasks.Task<int>
Parâmetros
- output
- Byte[]
A matriz que recebe bytes compactados, começando no índice zero.
Retornos
Uma tarefa cujo resultado é o número de bytes compactados gravados output, não o número de bytes de entrada consumidos.
Comentários
Esse wrapper .NET usa Task.Run para chamar Deflate(Byte[]) com NoFlush. Ele não usa uma operação assíncrona nativa.
A capacidade de saída é o comprimento da matriz. Se a entrada foi fornecida como um buffer de bytes, sua posição avança pelo número de bytes consumidos. Aguarde a conclusão da tarefa antes de alterar esses buffers ou usar esse compressor novamente.
Um resultado de zero não significa por si só que a compactação está concluída. Verifique NeedsInput() e Finished()forneça espaço de saída conforme necessário. Exceções da chamada síncrona são relatadas por meio da tarefa.
.NET implementação de wrapper assíncrono.
Implementação de compactação do Android.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.
Aplica-se a
DeflateAsync(ByteBuffer, Int32)
Executa a compactação em um buffer de bytes com o modo de liberação especificado como uma tarefa.
public System.Threading.Tasks.Task<int> DeflateAsync(Java.Nio.ByteBuffer? output, int flush);
member this.DeflateAsync : Java.Nio.ByteBuffer * int -> System.Threading.Tasks.Task<int>
Parâmetros
- output
- ByteBuffer
O buffer gravável que recebe bytes compactados entre sua posição atual e seu limite.
Retornos
Uma tarefa cujo resultado é o número de bytes compactados gravados output, não o número de bytes de entrada consumidos.
Comentários
Esse wrapper .NET usa Task.Run para chamar Deflate(ByteBuffer, Int32). Ele não usa uma operação assíncrona nativa.
A posição de saída avança pelo número de bytes gravados. Se a entrada foi fornecida como um buffer de bytes, sua posição avança pelo número de bytes consumidos. Aguarde a conclusão da tarefa antes de alterar esses buffers ou usar esse compressor novamente.
Para SyncFlush ou FullFlush, se o resultado for igual ao espaço de saída disponível antes da chamada, repita com o mesmo modo e mais espaço de saída. Forneça pelo menos seis bytes de espaço de saída para evitar marcadores de liberação repetidos. FullFlush também redefine o estado de compactação.
Um resultado de zero não significa por si só que a compactação está concluída. Verifique NeedsInput() e Finished() , conforme apropriado. Exceções da chamada síncrona, incluindo um modo de liberação inválido, são relatadas por meio da tarefa.
.NET implementação de wrapper assíncrono.
Implementação de compactação do Android.
Aplica-se a
DeflateAsync(Byte[], Int32, Int32)
Executa a compactação em um intervalo de matriz de bytes como uma tarefa.
public System.Threading.Tasks.Task<int> DeflateAsync(byte[]? output, int off, int len);
member this.DeflateAsync : byte[] * int * int -> System.Threading.Tasks.Task<int>
Parâmetros
- output
- Byte[]
A matriz que recebe bytes compactados.
- off
- Int32
O índice no output qual começar a gravar.
- len
- Int32
O número máximo de bytes compactados a serem gravados.
Retornos
Uma tarefa cujo resultado é o número de bytes compactados gravados no intervalo especificado, não o número de bytes de entrada consumidos.
Comentários
Esse wrapper .NET usa Task.Run para chamar Deflate(Byte[], Int32, Int32) com NoFlush. Ele não usa uma operação assíncrona nativa.
Se a entrada foi fornecida como um buffer de bytes, sua posição avança pelo número de bytes consumidos. Aguarde até que a tarefa seja concluída antes de alterar os buffers de entrada ou saída ou usar esse compressor novamente.
Um resultado de zero não significa por si só que a compactação está concluída. Verifique NeedsInput() e Finished()forneça espaço de saída conforme necessário. Exceções da chamada síncrona são relatadas por meio da tarefa.
.NET implementação de wrapper assíncrono.
Implementação de compactação do Android.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.
Aplica-se a
DeflateAsync(Byte[], Int32, Int32, Int32)
Executa a compactação em um intervalo de matriz de bytes com o modo de liberação especificado como uma tarefa.
public System.Threading.Tasks.Task<int> DeflateAsync(byte[]? output, int off, int len, int flush);
member this.DeflateAsync : byte[] * int * int * int -> System.Threading.Tasks.Task<int>
Parâmetros
- output
- Byte[]
A matriz que recebe bytes compactados.
- off
- Int32
O índice no output qual começar a gravar.
- len
- Int32
O número máximo de bytes compactados a serem gravados.
Retornos
Uma tarefa cujo resultado é o número de bytes compactados gravados no intervalo especificado, não o número de bytes de entrada consumidos.
Comentários
Esse wrapper .NET usa Task.Run para chamar Deflate(Byte[], Int32, Int32, Int32). Ele não usa uma operação assíncrona nativa.
Se a entrada foi fornecida como um buffer de bytes, sua posição avança pelo número de bytes consumidos. Aguarde até que a tarefa seja concluída antes de alterar os buffers de entrada ou saída ou usar esse compressor novamente.
Para SyncFlush ou FullFlush, se o resultado for igual len, repita com o mesmo modo e mais espaço de saída. Use um comprimento maior que seis bytes para evitar marcadores de liberação repetidos.
FullFlush também redefine o estado de compactação.
Um resultado de zero não significa por si só que a compactação está concluída. Verifique NeedsInput() e Finished() , conforme apropriado. Exceções da chamada síncrona, incluindo um modo de liberação inválido, são relatadas por meio da tarefa.
.NET implementação de wrapper assíncrono.
Implementação de compactação do Android.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.