Compartilhar via


Função PoFxSetComponentLatency (wdm.h)

A rotina PoFxSetComponentLatency especifica a latência máxima que pode ser tolerada na transição da condição ociosa para a condição ativa no componente especificado.

Sintaxe

void PoFxSetComponentLatency(
  [in] POHANDLE  Handle,
  [in] ULONG     Component,
  [in] ULONGLONG Latency
);

Parâmetros

[in] Handle

Um identificador que representa o registro do dispositivo com a PoFx (estrutura de gerenciamento de energia). O driver de dispositivo recebeu anteriormente esse identificador da rotina PoFxRegisterDevice .

[in] Component

O índice que identifica o componente. Esse parâmetro é um índice na matriz Components na estrutura PO_FX_DEVICE que o driver de dispositivo usou para registrar o dispositivo com PoFx. Se a matriz Components contiver N elementos, os índices de componentes variam de 0 a N–1.

[in] Latency

A latência máxima, em unidades de 100 nanossegundos, que pode ser tolerada no componente especificado. Para obter mais informações, consulte Comentários.

Retornar valor

Nenhum

Comentários

O driver de chamada fornece uma latência máxima que os clientes do dispositivo podem tolerar no componente especificado. Essa latência é o tempo necessário para concluir uma transição da condição ociosa para a condição ativa. A PoFx usa essa latência como uma dica para melhorar o desempenho.

Quando o componente alterna da condição ativa para a condição ociosa, a PoFx seleciona um estado fx apropriado de baixa potência para o componente inserir. Após a conclusão dessa transição, o tempo necessário para voltar para a condição ativa depende do estado fx selecionado. O PoFx tenta selecionar um estado fx que não viola o requisito de latência máxima.

Por exemplo, se um driver der suporte aos estados de energia F0, F1 e F2 no componente especificado, o estado F2 representará uma configuração de energia menor que o estado F1. Normalmente, o tempo T2 necessário para ativar (para o estado totalmente ativado, F0) de F2 é maior do que o tempo necessário para o T1 acordar de F1. Se a latência máxima for maior que T1, mas menor que T2, o PoFx poderá alternar com segurança o componente para o estado F1 e ainda atender ao requisito máximo de latência. No entanto, a PoFx evita alternar o componente para o estado F2 porque isso viola esse requisito.

O driver de dispositivo pode chamar PoFxSetComponentLatency sempre que uma alteração nas condições exigir uma alteração na latência máxima. Após cada chamada, a nova latência máxima permanece em vigor até que o driver chame PoFxSetComponentLatency novamente para atualizá-la.

Se um componente estiver na condição ociosa quando PoFxSetComponentLatency for chamado, PoFx poderá alterar o estado fx atual do componente para acomodar a nova latência máxima especificada pelo chamador.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível a partir do Windows 8.
Plataforma de Destino Universal
Cabeçalho wdm.h
Biblioteca Ntoskrnl.lib
DLL Ntoskrnl.exe
IRQL <= DISPATCH_LEVEL

Confira também

PO_FX_DEVICE

PoFxRegisterDevice