Idioma

UsbDeviceConnection.BulkTransferAsync Método

Definição

Sobrecargas

Nome Description
BulkTransferAsync(UsbEndpoint, Byte[], Int32, Int32)

Executa uma transferência em massa no ponto de extremidade especificado em uma tarefa.

BulkTransferAsync(UsbEndpoint, Byte[], Int32, Int32, Int32)

Executa uma transferência em massa do deslocamento de buffer fornecido em uma tarefa.

BulkTransferAsync(UsbEndpoint, Byte[], Int32, Int32)

Executa uma transferência em massa no ponto de extremidade especificado em uma tarefa.

public System.Threading.Tasks.Task<int> BulkTransferAsync(Android.Hardware.Usb.UsbEndpoint? endpoint, byte[]? buffer, int length, int timeout);
member this.BulkTransferAsync : Android.Hardware.Usb.UsbEndpoint * byte[] * int * int -> System.Threading.Tasks.Task<int>

Parâmetros

endpoint
UsbEndpoint

O ponto de extremidade que determina a direção de transferência.

buffer
Byte[]

O buffer para os dados a serem enviados ou recebidos, começando no índice zero. Se null, length deve ser zero.

length
Int32

O número de bytes a serem enviados ou recebidos. Deve ser nãonegativo e não maior que o comprimento do buffer. Consulte as observações para o limite de compatibilidade de 16384 bytes.

timeout
Int32

O tempo limite de transferência em milissegundos; zero esperas indefinidamente.

Retornos

Uma tarefa cujo resultado é o número de bytes transferidos, incluindo zero, com êxito ou um valor negativo em caso de falha.

Comentários

Esse método .NET usa Run<TResult>(Func<TResult>) para chamar BulkTransfer(UsbEndpoint, Byte[], Int32, Int32). Mantenha a conexão aberta e não leia ou altere o buffer até que a tarefa seja concluída.

Antes do Android 9 (nível de API 28), os comprimentos de transferência maiores que 16384 bytes são reduzidos para 16384. No Android 9 e posterior, esse limite ainda se aplica a aplicativos destinados a um nível de API abaixo de 28. Os limites do buffer são verificados antes dessa redução.

Fontes de implementação: .NET gerador de wrapper de tarefa e implementação de conexão USB 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

BulkTransferAsync(UsbEndpoint, Byte[], Int32, Int32, Int32)

Executa uma transferência em massa do deslocamento de buffer fornecido em uma tarefa.

public System.Threading.Tasks.Task<int> BulkTransferAsync(Android.Hardware.Usb.UsbEndpoint? endpoint, byte[]? buffer, int offset, int length, int timeout);
member this.BulkTransferAsync : Android.Hardware.Usb.UsbEndpoint * byte[] * int * int * int -> System.Threading.Tasks.Task<int>

Parâmetros

endpoint
UsbEndpoint

O ponto de extremidade que determina a direção de transferência.

buffer
Byte[]

O buffer para os dados a serem enviados ou recebidos. Se null, offset e length ambos devem ser zero.

offset
Int32

O índice nãonegativo do primeiro byte a ser enviado ou recebido.buffer

length
Int32

O número de bytes a serem enviados ou recebidos. Deve ser nãonegativo e o intervalo que começa offset deve caber dentro do buffer. Consulte as observações para o limite de compatibilidade de 16384 bytes.

timeout
Int32

O tempo limite de transferência em milissegundos; zero esperas indefinidamente.

Retornos

Uma tarefa cujo resultado é o número de bytes transferidos, incluindo zero, com êxito ou um valor negativo em caso de falha.

Comentários

Esse método .NET usa Run<TResult>(Func<TResult>) para chamar BulkTransfer(UsbEndpoint, Byte[], Int32, Int32, Int32). Mantenha a conexão aberta e não leia ou altere o buffer até que a tarefa seja concluída.

Antes do Android 9 (nível de API 28), os comprimentos de transferência maiores que 16384 bytes são reduzidos para 16384. No Android 9 e posterior, esse limite ainda se aplica a aplicativos destinados a um nível de API abaixo de 28. Os limites do buffer são verificados antes dessa redução.

Fontes de implementação: .NET gerador de wrapper de tarefa e implementação de conexão USB 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