O sono inicial faz uma pausa na execução por um tempo especificado. Por outro.
Considerando a importância deles, compilamos este guia para diferenciar entre os cmdlets de sono-sono e o processo de espera.
Diferença entre o sono-sono e o processo de espera
O Processo de espera cmdlet espera que um processo pare antes de aceitar outro processo, enquanto o Sono inicial O cmdlet é utilizado para suspender ou pausar o script por um determinado período. Para uma melhor compreensão, demonstramos o uso do sono inicial e de espera explicitamente.
Como funciona o sono inicial no PowerShell?
Chega um momento em que precisamos pausar ou suspender o script no PowerShell por um período específico. Pode haver muitas razões para pausar a execução do script. Por exemplo, se você deseja estender o tempo de execução do script ou deseja limitar o tempo para obter informações do usuário.
Sintaxe
> Sono inicial <-Seconds> <-Milliseconds> <-Parameters>
Na sintaxe:
Exemplo: pause o script para um horário específico
Para aplicar o sono inicial, criamos um exemplo de script. O sono inicial é usado entre dois cmdlets de gravação no host no código de exemplo a seguir. A possível espera de 5 segundos após o primeiro host de gravação e antes do segundo host de gravação:
Write-host "Usando o sono inicial"
Sono -inicial -Segundos 5
Escreva-host "O código após o sono inicial"
Vamos executar o script:
A saída mostra que a linha após o cmdlet de sono-sono é executada após 5 segundos de espera.
Como o processo de espera funciona no PowerShell?
O CMDLET do processo de espera espera que um processo pare antes de ir para a execução adicional do script. Por padrão, o processo de espera esperará por um tempo indefinido. No entanto, você pode limitar o tempo para a espera também. A sintaxe do processo de espera é fornecida abaixo:
Sintaxe
> Processo de espera <-Name> <-Time> <-Parameters>
Na sintaxe:
Vamos entender mais claramente usando o exemplo.
Exemplo: aguarde um processo
Como sabemos, o CMDLET do processo de espera espera por um processo e depois aceita outro processo. No exemplo abaixo, o processo de espera é aplicado no HP.Myhp processo. Aqui, o cmdlet do processo de espera vai esperar pelo HP.Myhp Processar antes de continuar a execução adicional:
Write-host “Usando o processo de espera!”
Espere -Process -ProcessName HP.Myhp
Escreva-host “O HP.O processo MYHP foi interrompido!”
Agora, execute o script:
Você observará que o cursor continuará correndo e não continuará a execução adicional se o processo não for interrompido.
Você também pode especificar o tempo no processo de espera e se o processo não for interrompido dentro do prazo, o PowerShell fará um erro. Vamos experimentar através do exemplo a seguir, onde limitamos o tempo de espera a 5 segundos:
Escreva-host "Esperando um processo para parar!"
Espere -Process -ProcessName HP.MyHP -Timeout 5
Vamos executar o script e olhar para a saída:
Observa -se que depois de esperar por 5 segundos, Powershell deu um erro que HP.Myhp não parou no tempo especificado.
Ponto de bônus: A tabela a seguir considera quatro fatores principais para diferenciar entre o processo de espera e o cmdlet de sono-sono.
Fatores | Processo de espera | Sono inicial |
---|---|---|
Propósito | Pausa a execução do script. | Pausa a execução do script. |
Escopo de aplicabilidade | É aplicado para aguardar apenas processos. | Pode ser aplicado para suspender a sessão/atividade a qualquer momento. O escopo do sono inicial é mais amplo que o processo de espera. |
Parâmetros comuns | Suporta parâmetros comuns. | Também suporta parâmetros comuns do PowerShell. |
Unidade de tempo | Apenas segundos. | Segundos ou milissegundos. |
Você teria melhor entendido a diferença entre o processo de espera e o sono inicial em PowerShell.
Conclusão
O sono inicial suspende ou faz uma pausa no script por um certo período de tempo. Por outro lado, o cmdlet de espera aguarda um processo antes de aceitar outro processo. Ambos os métodos são usados como métodos de pausa no PowerShell. Você aprendeu a aplicar o sono de inicialização e o processo de espera e a diferença deles também. Principalmente, esses cmdlets diferem no escopo da aplicabilidade. No entanto, ambos servem ao mesmo objetivo: pausar a execução do script do PowerShell.