Partager via


Wait-Event

Attend qu’un événement particulier soit déclenché avant de continuer à s’exécuter.

Syntaxe

Default (Par défaut)

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

Description

La cmdlet Wait-Event interrompt l’exécution d’un script ou d’une fonction jusqu’à ce qu’un événement particulier soit déclenché. L’exécution reprend lorsque l’événement est détecté. Pour annuler l’attente, appuyez sur Ctrl+C.

Cette fonctionnalité offre une alternative au sondage pour un événement. Il vous permet également de déterminer la réponse à un événement de deux façons différentes : en utilisant le paramètre Action de l’abonnement à l’événement et en attendant qu’un événement retourne, puis réponde avec une action.

Exemples

Exemple 1 : Attendre l’événement suivant

PS C:\> Wait-Event

Cette commande attend l’événement suivant déclenché.

Exemple 2 : Attendre un événement avec un identificateur source spécifié

PS C:\> Wait-Event -SourceIdentifier "ProcessStarted"

Cette commande attend l’événement suivant qui est déclenché et qui a un identificateur source de ProcessStarted.

Exemple 3 : Attendre un événement de minuteur écoulé

PS C:\> $Timer.Interval = 2000
PS C:\> $Timer.Autoreset = $False
PS C:\> $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

Cette commande utilise l’applet de commande Wait-Event pour attendre un événement de minuteur sur un minuteur défini pour 2000 millisecondes.

Exemple 4 : Attendre un événement après un délai d’expiration spécifié

PS C:\> Wait-Event -SourceIdentifier "ProcessStarted" -Timeout 90

Cette commande attend jusqu’à 90 secondes pour l’événement suivant déclenché et qui a un identificateur source de « ProcessStarted ». Si l’heure spécifiée expire, l’attente se termine.

Paramètres

-SourceIdentifier

Spécifie l’identifiant de la source pour lequel cette applet de commande attend des événements. Par défaut, Wait-Event attend tout événement.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:0
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-Timeout

Spécifie la durée maximale, en secondes, qui Wait-Event attend que l’événement se produise. La valeur par défaut , -1, attend indéfiniment. Le minutage commence lorsque vous envoyez la commande Wait-Event.

Si l’heure spécifiée est dépassée, l’attente se termine et l’invite de commande revient, même si l’événement n’a pas été déclenché. Aucun message d’erreur n’est affiché.

Propriétés du paramètre

Type:Int32
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
Alias:TimeoutSec

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

CommonParameters

Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.

Entrées

String

Sorties

PSEventArgs

Notes

  • Les événements, les abonnements aux événements et la file d’attente d’événements existent uniquement dans la session active. Si vous fermez la session active, la file d’attente d’événements est ignorée et l’abonnement à l’événement est annulé.