Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Você pode modelar um provedor de classe como um provedor push ou pull, que especifica como um provedor espera interagir com o WMI. Os provedores pull recebem uma solicitação do WMI e satisfazem a solicitação gerando os dados dinamicamente ou recuperando-os de um cache local. Os provedores pull também devem implementar um grande número de interfaces.
Um provedor pull gera definições de classe dinamicamente. Normalmente, os dados gerenciados por um provedor pull mudam com freqüência, exigindo que o provedor gere a classe dinamicamente ou recupere a classe de um cache local sempre que um aplicativo emite uma solicitação. Um provedor pull deve implementar seus próprios mecanismos de recuperação de dados, cache e notificação de eventos. Como a maioria dos provedores são provedores pull, a documentação neste arquivo pressupõe que você está criando um provedor pull, a menos que explicitamente indicado o contrário.
Por outro lado, o WMI usa dados no repositório WMI para lidar com todas as solicitações de aplicativos para provedores de push. Os provedores push também usam menos métodos de interface e, portanto, são mais fáceis de implementar. Um provedor de push usa o repositório WMI como uma área de armazenamento para informações sobre o objeto gerenciado e atualiza essas informações somente durante a inicialização. Por exemplo, o provedor de classe WDM incluído na seção WMI do Microsoft Windows Software Development Kit (SDK) é modelado como um provedor push.
Ao usar o repositório WMI como uma área de armazenamento, um provedor de push obtém os seguintes benefícios em relação a um provedor pull:
- O provedor não precisa implementar um cache local para armazenar dados.
- O provedor não precisa suportar a recuperação de dados; em vez disso, o provedor pode confiar no WMI para fornecer suporte à recuperação.
- Quando um aplicativo solicita dados fornecidos pelo provedor, o WMI atende a essa solicitação.
- O provedor também pode contar com o WMI para dar suporte à notificação de eventos.
No entanto, como um provedor de push atualiza somente durante a inicialização, quaisquer alterações em uma classe podem não ser refletidas no repositório WMI por algum tempo. Portanto, o modelo de provedor de push funciona melhor com classes que mudam pouco ou então são completamente estáticas.