Compartilhar via


Função BuildIoRingRegisterFileHandles (ioringapi.h)

Registra uma matriz de identificadores de arquivo com o sistema para futuras operações de anel de E/S.

Sintaxe

HRESULT BuildIoRingRegisterFileHandles(
  HIORING         ioRing,
  UINT32          count,
  HANDLE const [] handles,
  UINT_PTR        userData
);

Parâmetros

ioRing

Um HIORING que representa um identificador para o anel de E/S para o qual os identificadores de arquivo são registrados.

count

Um UINT32 que especifica o número de identificadores fornecidos no parâmetro handles .

handles

Uma matriz de valores HANDLE a serem registrados.

userData

Um valor UINT_PTR identificando a operação de registro. Especifique esse valor ao cancelar a operação com uma chamada para BuildIoRingCancelRequest. Se um aplicativo implementar o comportamento de cancelamento para a operação, o valor userData deverá ser exclusivo. Caso contrário, o valor é tratado como opaco pelo sistema e pode ser qualquer coisa, incluindo 0.

Valor de retorno

Retorna um HRESULT incluindo, mas não limitado ao seguinte:

Value Description
S_OK Êxito
IORING_E_SUBMISSION_QUEUE_FULL A fila de envio está cheia e nenhuma entrada adicional está disponível para compilação. O aplicativo deve enviar as entradas existentes e aguardar a conclusão de algumas delas antes de adicionar mais operações à fila.
IORING_E_UNKNOWN_REQUIRED_FLAG O aplicativo forneceu um sinalizador necessário que não é conhecido pela implementação. O código da biblioteca deve verificar o campo IoRingVersion do IORING_INFO obtido de uma chamada para GetIoRingInfo para determinar a versão da API de um anel de E/S que determina as operações e sinalizadores com suporte. Os aplicativos devem saber a versão usada para criar o anel de E/S e, portanto, não devem fornecer sinalizadores sem suporte no runtime.

Observações

Essa função permite que a implementação do kernel execute a validação e o mapeamento interno apenas uma vez, evitando a sobrecarga em cada operação de E/S. As entradas subsequentes na fila de envio podem se referir aos identificadores registrados com essa função usando um índice inteiro na matriz. Se houver um registro anterior, isso substituirá completamente o registro anterior.

Requirements

Requirement Value
Cliente mínimo suportado Windows Build 22000
Servidor mínimo compatível Windows Build 22000
Header ioringapi.h
Library kernel32. Lib