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 |