Megosztás a következőn keresztül:


Wait-Event

A futtatás folytatása előtt megvárja, amíg egy adott esemény létrejön.

Syntax

Default (Alapértelmezett)

Wait-Event
    [[-SourceIdentifier] <String>]
    [-Timeout <Int32>]
    [<CommonParameters>]

Description

A Wait-Event parancsmag felfüggeszti egy szkript vagy függvény végrehajtását egy adott esemény bekövetkeztéig. A végrehajtás folytatódik az esemény észlelésekor. A várakozás megszakításához nyomja le CTRL+C.

Ez a funkció alternatívát kínál egy esemény lekérdezésére. Azt is lehetővé teszi, hogy meghatározza az eseményre adott választ két különböző módon:

  • az esemény-előfizetés művelet paraméterének használatával
  • arra vár, hogy egy esemény visszatérjen, majd egy művelettel válaszoljon

Példák

1. példa: Várjon a következő eseményre

Ez a példa a következő eseményre vár.

Wait-Event

2. példa: Várjon egy megadott forrásazonosítóval rendelkező eseményre

Ez a példa a következő eseményre vár, amely a ProcessStarted forrásazonosítójával rendelkezik.

Wait-Event -SourceIdentifier "ProcessStarted"

3. példa: Várakozás egy időzítő eltelt eseményére

Ez a példa a Wait-Event parancsmaggal várja meg az időzítő eseményeit egy 2000 ezredmásodpercre beállított időzítőn.

$Timer = New-Object Timers.Timer
$objectEventArgs = @{
    InputObject = $Timer
    EventName = 'Elapsed'
    SourceIdentifier = 'Timer.Elapsed'
}
Register-ObjectEvent @objectEventArgs
$Timer.Interval = 2000
$Timer.Autoreset = $false
$Timer.Enabled = $true
Wait-Event Timer.Elapsed
ComputerName     :
RunspaceId       : bb560b14-ff43-48d4-b801-5adc31bbc6fb
EventIdentifier  : 1
Sender           : System.Timers.Timer
SourceEventArgs  : System.Timers.ElapsedEventArgs
SourceArgs       : {System.Timers.Timer, System.Timers.ElapsedEventArgs}
SourceIdentifier : Timer.Elapsed
TimeGenerated    : 4/23/2020 2:30:37 PM
MessageData      :

4. példa: Várakozás egy eseményre egy megadott időtúllépés után

Ez a példa legfeljebb 90 másodpercet vár a következő eseményre, amely ProcessStartedforrásazonosítóval rendelkezik. Ha a megadott idő lejár, a várakozás véget ér.

Wait-Event -SourceIdentifier "ProcessStarted" -Timeout 90

Paraméterek

-SourceIdentifier

Megadja azt a forrásazonosítót, amelyre ez a parancsmag az eseményeknél vár. Alapértelmezés szerint Wait-Event minden eseményre vár.

Paramétertulajdonságok

Típus:String
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:0
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:True
Fennmaradó argumentumokból származó érték:False

-Timeout

Legfeljebb hány másodpercig várjon Wait-Event az esemény bekövetkezésére. Az alapértelmezett -1 határozatlan ideig várakozik. Az időzítés a Wait-Event parancs elküldésekor kezdődik.

Ha túllépi a megadott időt, a várakozás véget ér, és a parancssor visszatér, még akkor is, ha az eseményt nem emelték ki. Nem jelenik meg hibaüzenet.

Paramétertulajdonságok

Típus:Int32
Alapértelmezett érték:-1
Támogatja a helyettesítő karaktereket:False
DontShow:False
Aliasok:TimeoutSec

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

CommonParameters

Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.

Bevitelek

String

Kimenetek

PSEventArgs

Jegyzetek

Az események, az esemény-előfizetések és az eseménysor csak az aktuális munkamenetben léteznek. Ha bezárja az aktuális munkamenetet, a rendszer elveti az eseménysort, és megszakítja az esemény-előfizetést.