Espera até que um evento específico ocorra para continuar executando.
Sintaxe
Wait-Event [[-SourceIdentifier] <string>] [-Timeout <int>] [<CommonParameters>]
Descrição
O cmdlet Wait-Event suspende a execução de um script ou função até que um evento específico ocorra. A execução continua quando o evento é detectado. Para cancelar a espera, pressione CTRL+C.
Esse recurso fornece uma alternativa à sondagem de um evento. Ele também permite determinar a resposta a um evento de dois modos diferentes: usando o parâmetro Action da assinatura de evento e esperando o retorno de um evento e, em seguida, respondendo com uma ação.
Parâmetros
-SourceIdentifier <string>
Espera somente eventos com o identificador de origem especificado. Por padrão, o Wait-Events espera por qualquer evento.
Necessário? |
false |
Posição? |
1 |
Valor padrão |
All events |
Aceitar entrada do pipeline? |
true (ByPropertyName) |
Aceitar caracteres curinga? |
false |
-Timeout <int>
Determina o tempo máximo, em segundos, que Wait-Event espera pelo evento ocorrer. O padrão, -1, espera indefinidamente. O controle de tempo começa quando você envia o comando Wait-Event.
Se o tempo especificado for excedido, a espera terminará e o prompt de comando retornará, mesmo se o evento não tiver sido gerado. Nenhuma mensagem de erro exibida.
Necessário? |
false |
Posição? |
named |
Valor padrão |
|
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
<CommonParameters>
Esse cmdlet oferece suporte aos parâmetros comuns: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Para obter mais informações, consulte about_Commonparameters.
Entradas e saídas
O tipo de entrada é o tipo dos objetos que você pode canalizar para o cmdlet. O tipo de retorno é o tipo dos objetos que o cmdlet retorna.
Entradas |
System.String |
Saídas |
System.String |
Observações
Eventos, assinaturas de eventos e a fila de eventos só existem na sessão atual. Se você fechar a sessão atual, a fila de eventos será descartada e a assinatura de evento será cancelada.
Exemplo 1
C:\PS>wait-event Descrição ----------- Esse comando espera pela ocorrência do próximo evento.
Exemplo 2
C:\PS>wait-event -sourceIdentifier "ProcessStarted" Descrição ----------- Esse comando espera pela ocorrência do próximo que tenha um identificador de origem de "ProcessStarted".
Exemplo 3
C:\PS>$timer.Interval = 2000 C:\PS> $timer.Autoreset = $false C:\PS> $timer.Enabled = $true; Wait-Event Timer.Elapsed # After 2 seconds EventIdentifier : 12 Sender : System.Timers.Timer SourceEventArgs : System.Timers.ElapsedEventArgs SourceArgs : {System.Timers.Timer, System.Timers.ElapsedEventArgs} SourceIdentifier : Timer.Elapsed TimeGenerated : 6/10/2008 3:24:18 PM MessageData : ForwardEvent : False Descrição ----------- Esse comando usa o cmdlet Wait-Event para esperar por um evento do timer em um timer definido para 2000 milissegundos.
Exemplo 4
C:\PS>wait-event -sourceIdentifier "ProcessStarted" -timeout 90 Descrição ----------- Esse comando espera até 90 segundos pela ocorrência do próximo evento que tenha um identificador de origem de "ProcessStarted". Se o tempo especificado expirar, a espera terminará.
See Also