Wait-Event
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 |
Todos os eventos |
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á.
Consulte também
Conceitos
Register-ObjectEvent
Register-EngineEvent
Register-WmiEvent
Unregister-Event
Get-Event
New-Event
Remove-Event
Wait-Event
Get-EventSubscriber