다음을 통해 공유


Wait-Event

계속 실행하지 않고 특정 이벤트가 발생할 때까지 대기합니다.

구문

Wait-Event [[-SourceIdentifier] <string>] [-Timeout <int>] [<CommonParameters>]

설명

Wait-Event cmdlet은 특정 이벤트가 발생할 때까지 스크립트 또는 함수 실행을 일시 중단합니다. 이벤트가 감지되면 실행이 다시 시작됩니다. 대기를 취소하려면 Ctrl+C를 누릅니다.

이 기능은 이벤트 폴링 대신 사용할 수 있습니다. 또한 이 기능을 사용하면 두 가지 다른 방법으로 이벤트에 대한 응답을 결정할 수 있습니다. 그 하나는 이벤트 가입의 Action 매개 변수를 사용하는 것이고 다른 하나는 이벤트가 반환될 때까지 대기했다가 작업으로 응답하는 방법입니다.

매개 변수

-SourceIdentifier <string>

지정된 원본 식별자를 가진 이벤트만 대기합니다. Wait-Event는 기본적으로 모든 이벤트를 대기합니다.

필수 여부

false

위치

1

기본값

모든 이벤트

파이프라인 입력 적용 여부

true (ByPropertyName)

와일드카드 문자 적용 여부

false

-Timeout <int>

Wait-Event에서 이벤트가 발생할 때까지 대기할 최대 시간(초)을 결정합니다. 기본값은 무한히 대기한다는 것을 나타내는 -1입니다. 타이밍은 Wait-Event 명령을 전송할 때 시작됩니다.

지정된 시간이 초과되면 이벤트가 발생하지 않은 경우에도 대기가 종료되고 명령 프롬프트가 반환됩니다. 오류 메시지가 표시되지 않습니다.

필수 여부

false

위치

named

기본값

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

<CommonParameters>

이 cmdlet은 -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, -OutVariable 등의 일반 매개 변수를 지원합니다. 자세한 내용은 about_commonparameters.

입력 및 출력

입력 유형은 cmdlet으로 파이프할 수 있는 개체의 유형입니다. 반환 유형은 cmdlet에서 반환되는 개체의 유형입니다.

입력

System.String

출력

System.String

참고

이벤트, 이벤트 가입 및 이벤트 큐는 현재 세션에서만 존재합니다. 현재 세션을 닫으면 이벤트 큐가 삭제되고 이벤트 가입이 취소됩니다.

예 1

C:\PS>wait-event

설명
-----------
이 명령은 다음 이벤트가 발생할 때까지 대기합니다.





예 2

C:\PS>wait-event -sourceIdentifier "ProcessStarted"

설명
-----------
이 명령은 원본 식별자가 "ProcessStarted"인 다음 이벤트가 발생할 때까지 대기합니다.





예 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

설명
-----------
이 명령은 Wait-Event cmdlet을 사용하여 2000밀리초로 설정된 타이머에 대한 타이머 이벤트를 대기합니다.





예 4

C:\PS>wait-event -sourceIdentifier "ProcessStarted" -timeout 90

설명
-----------
이 명령은 원본 식별자가 "ProcessStarted"인 다음 이벤트가 발생할 때까지 최대 90초까지 대기합니다. 지정된 시간이 만료되면 대기가 종료됩니다.





참고 항목

개념

Register-ObjectEvent
Register-EngineEvent
Register-WmiEvent
Unregister-Event
Get-Event
New-Event
Remove-Event
Wait-Event
Get-EventSubscriber