ti-enxame.com

Por que o PowerShell demora tanto para init?

Quando eu disparo PowerShell leva ~ 10-15 segundos para init e me dar um prompt. Alguém sabe o que está fazendo quando você primeiro atinge isso que pode contribuir para isso? Isso é XP Pro, 2 GB de memória, apenas Outlook e Firefox em execução interativamente, bastante direto.

20
squillman

A equipe do PowerShell tem um correção para isso em seu blog .

Conteúdo do script do site mencionado update-gac.ps1

Set-Alias ngen (Join-Path ([System.Runtime.InteropServices.RuntimeEnvironment]::GetRuntimeDirectory()) ngen.exe)
[AppDomain]::CurrentDomain.GetAssemblies() |
    sort {Split-path $_.location -leaf} |
    %{
        $Name = (Split-Path $_.location -leaf)
        if ([System.Runtime.InteropServices.RuntimeEnvironment]::FromGlobalAccessCache($_))
        {
            Write-Host "Already GACed: $Name"
        }else
        {
            Write-Host -ForegroundColor Yellow "NGENing      : $Name"
            ngen $_.location | %{"`t$_"}
         }
      }
15
aharden

Você tem uma conexão de internet flaky/ausente?

Poderia depender da segurança do Windows tentando entrar em contato com a autoridade de certificação para obter a lista de revogação do certificado. Se não houver conexão com a Internet, você terá que esperar pelo tempo limite.

Edit :

Você poderia tentar depurar isso usando o Explorador do Processo do SysInternal (/ Microsoft). Talvez você possa ver quais recursos são acessados ​​pelo processo.

1
splattne

Quanto tempo demora para iniciar imediatamente outra instância?

Se muito mais rápido, então você está vendo o tempo necessário para carregar .NET, PSH e Snapins. Se não, provavelmente seja relacionado ao perfil (perfil de PSH ou algo como entrar em contato com anúncio1.).

1. Eu vejo isso com o provedor de anúncios da PSCX ao trabalhar remotamente.

0
Richard