A menos que eu esteja totalmente perdendo alguma coisa, eu estou supondo que você está armazenando o primeiro processo get na variável $wp
, então referenciar a variável novamente retornará os dados antigos?
E se você fizer um dos seguintes:
Sou um grande fã de remove-variable
, já que os valores antigos podem realmente causar estranhezas inesperadas.
[EDITAR]
A resposta de Peter Hahndorf parece ser a alternativa endossada pela Microsoft, embora eu tenha perdido o link para isso. Mas como a causa do comportamento de fato parece ser um possível bug, vou apenas complementar com o seguinte:
Esse cara parece ter resolvido o problema de reciclar pools de aplicativos da maneira mais eficiente usando C #. Se a velocidade é essencial (o WMI normalmente está no lado que consome tempo), como se alguém devesse fazer um grande número de reciclagens em um curto período de tempo, isso poderia valer a pena.
Não parece muito difícil portar a solução para o Powershell, se apenas carregarmos o %WinDir%\system32\Inetsrv\Microsoft.Web.Administration.dll
no shell primeiro para acessar o namespace.
O ponto de referência original para o código parece vir da Microsoft aqui .