特定のイベントが発生するまで待機してから、実行を継続します。
構文
Wait-Event [[-SourceIdentifier] <string>] [-Timeout <int>] [<CommonParameters>]
説明
Wait-Event コマンドレットは、特定のイベントが発生するまでスクリプトまたは関数の実行を中断します。イベントが検出されると、実行が再開されます。待機をキャンセルするには、Ctrl + C キーを押します。
この機能によって、イベントのポーリングに代わる別の方法が提供されます。また、この機能によって、イベント サブスクリプションの Action パラメーターを使用する方法か、返すイベントを待機してアクションで応答する方法の、2 つの異なる方法でイベントへの応答を指定できます。
パラメーター
-SourceIdentifier <string>
指定されたソース識別子を持つイベントのみを待機します。既定では、Wait-Event はすべてのイベントを待機します。
必須 |
false |
位置 |
1 |
既定値 |
All events |
パイプライン入力を許可する |
true (ByPropertyName) |
ワイルドカード文字を許可する |
false |
-Timeout <int>
イベントの発生を Wait-Event が待つ最大時間を秒単位で指定します。既定値は、無期限に待機することを示す -1 です。タイミングは、Wait-Event コマンドを送信したときに始まります。
指定された時間を超えると、イベントが発生していない場合でも待機が終了し、コマンド プロンプトに戻ります。エラー メッセージは表示されません。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
<CommonParameters>
このコマンドレットは、次の共通パラメーターをサポートします: -Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer、および -OutVariable。Ô”¼š¤Ë¤Ä¤¤¤Æ¤Ï¡¢次を参照してください: about_Commonparameters.
入力と出力
入力値の型は、コマンドレットへのパイプが可能なオブジェクトの型です。戻り値の型は、コマンドレットによって返されるオブジェクトの型です。
入力 |
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 コマンドレットを使用して、2000 ミリ秒に設定されているタイマーのタイマー イベントを待機します。
例 4
C:\PS>wait-event -sourceIdentifier "ProcessStarted" -timeout 90 説明 ----------- このコマンドは、ソース識別子が "ProcessStarted" である次に発生するイベントを、最大で 90 秒待機します。指定された時間が経過した場合、待機は終了します。
関連項目