Compartilhar via


Função NdisAllocateTimerObject (ndis.h)

A função NdisAllocateTimerObject aloca e inicializa um objeto de temporizador para uso com funções de temporizador NdisXxx subsequentes.

Sintaxe

NDIS_STATUS NdisAllocateTimerObject(
  [in]  NDIS_HANDLE                 NdisHandle,
  [in]  PNDIS_TIMER_CHARACTERISTICS TimerCharacteristics,
  [out] PNDIS_HANDLE                pTimerObject
);

Parâmetros

[in] NdisHandle

Um identificador NDIS que foi obtido durante a inicialização do chamador. Para obter mais informações sobre como obter identificadores NDIS, consulte Obtendo identificadores de pool.

[in] TimerCharacteristics

Um ponteiro para um chamador fornecido NDIS_TIMER_CHARACTERISTICS estrutura que especifica as características do objeto de temporizador alocado.

[out] pTimerObject

Um ponteiro para um identificador de objeto de temporizador NDIS que o NDIS fornece para identificar o objeto de temporizador em chamadas subsequentes para funções de temporizador NdisXxx .

Retornar valor

NdisAllocateTimerObject retorna um dos seguintes valores de status:

Código de retorno Descrição
NDIS_STATUS_SUCCESS
O objeto de temporizador foi alocado com êxito.
NDIS_STATUS_RESOURCES
A alocação falhou devido a recursos insuficientes.
NDIS_STATUS_BAD_CHARACTERISTICS
A alocação falhou porque as informações na estrutura NDIS_TIMER_CHARACTERISTICS são inválidas.
NDIS_STATUS_FAILURE
Nenhum dos valores de status anteriores se aplica.

Comentários

Para usar serviços de temporizador, um driver NDIS primeiro chama a função NdisAllocateTimerObject para inicializar um objeto de temporizador. Normalmente, NdisAllocateTimerObject é chamado durante a inicialização do driver.

Para iniciar um temporizador, chame a função NdisSetTimerObject . Chamadas para NdisSetTimerObject inserem o objeto de temporizador na fila do temporizador do sistema. Somente uma instância de um objeto de temporizador específico pode ser enfileirada a qualquer momento.

Para cancelar um temporizador, chame a função NdisCancelTimerObject . NdisCancelTimerObject removerá o objeto de temporizador se ele estiver na fila no momento.

Para liberar um objeto de temporizador, você deve chamar a função NdisFreeTimerObject .

Requisitos

Requisito Valor
Cliente mínimo com suporte Com suporte no NDIS 6.0 e posterior.
Plataforma de Destino Universal
Cabeçalho ndis.h (inclua Ndis.h)
Biblioteca Ndis.lib
IRQL <= DISPATCH_LEVEL
Regras de conformidade da DDI Irql_Timer_Function(ndis)

Confira também

NDIS_TIMER_CHARACTERISTICS

NdisCancelTimerObject

NdisFreeTimerObject

NdisSetTimerObject