Différence entre le début et le processus d'attente

Différence entre le début et le processus d'attente
Dans les scripts PowerShell, il existe de nombreuses méthodes pour optimiser les scripts. Par exemple, les méthodes de pause PowerShell sont destinées à suspendre le script pendant une période spécifique ou à attendre qu'un autre processus se termine avant de poursuivre l'exécution. Début-sommeil et processus d'attente appartiennent à la catégorie des méthodes de pause PowerShell.

Début-sommeil pause l'exécution pendant une période spécifiée. D'un autre côté, le processus d'attente attend que certains processus se terminent puis continue l'exécution.

Compte tenu de leur important.

Différence entre le début et le processus d'attente

Le Processus d'attente La porteflet attend qu'un processus s'arrête avant d'accepter un autre processus, tandis que le Commencer à endormir La candidature est utilisée pour suspendre ou suspendre le script pendant une certaine période. Pour une meilleure compréhension, nous avons démontré l'utilisation du début et du processus d'attente explicitement.

Comment le début du sommeil fonctionne-t-il dans PowerShell?

Il arrive un moment où nous devons faire une pause ou suspendre le script dans PowerShell pour une période de temps spécifique. Il pourrait y avoir de nombreuses raisons de suspendre l'exécution du script. Par exemple, si vous souhaitez prolonger le temps d'exécution du script ou si vous souhaitez limiter le temps de prendre les commentaires de l'utilisateur.

Syntaxe

> Commencer-t-end <-Seconds> <-Milliseconds> <-Parameters>

Dans la syntaxe:

  • Les -iscondes et les-millescondes se réfèrent aux unités du temps. Les secondes doivent être en double type de données tandis que les millisecondes doivent être une valeur entière.
  • Le dénote l'ensemble des paramètres communs qui sont applicables avec toutes les applets de vente PowerShell. Les paramètres couramment utilisés incluent, Déboguer, Erreur, Errorvariable, InformationAction, InformationVariable etc.

Exemple: pause le script pour une heure spécifique
Pour appliquer le début du sommeil, nous avons créé un exemple de script. Le début de la sommeil est utilisé entre deux applets de commande d'écriture dans l'exemple de code suivant. L'attente potentielle de 5 secondes après le premier hôte d'écriture et avant le deuxième hôte d'écriture:

Écriture-hôte "Utiliser le début du sommeil"
Début-sommeil - secondes 5
Écriture-hôte "Le code après le début du sommeil"

Exécutons le script:

La sortie montre que la ligne après la commande de début de départ est exécutée après 5 secondes d'attente.

Comment fonctionne le processus d'attente dans PowerShell?

L'attaque de traitement d'attente attend qu'un processus s'arrête avant d'aller vers une nouvelle exécution du script. Par défaut, le processus d'attente attendra un temps indéfini. Cependant, vous pouvez également limiter le temps d'attente. La syntaxe du processus d'attente est fournie ci-dessous:

Syntaxe

> Processe d'attente <-Name> <-Time> <-Parameters>

Dans la syntaxe:

  • Le -Nom Le paramètre se réfère au nom du processus.
  • Le -Temps Le paramètre est utilisé pour limiter le temps d'attente.
  • Le -Paramètres indiquer certains des paramètres couramment utilisés tels que le débogage, l'erreur, etc.

Comprenons-le plus clairement en utilisant l'exemple.

Exemple: attendez un processus
Comme nous le savons, l'attaque d'attente attend un processus et accepte ensuite un autre processus. Dans l'exemple ci-dessous, le processus d'attente est appliqué sur le HP.Myhp processus. Ici, l'attaque de traitement d'attente attendra le HP.Myhp processus avant de poursuivre l'exécution:

Écriture-hôte «Utilisation de procédé d'attente!"
Processe d'attente -processName HP.Myhp
Host en écriture «Le HP.Le processus MYHP a été arrêté!"

Maintenant, exécutez le script:

Vous observerez que le curseur continuera à cocher et ne continuera pas l'exécution supplémentaire si le processus n'est pas arrêté.

Vous pouvez également spécifier l'heure du processus d'attente et si le processus n'est pas arrêté dans le délai, puis PowerShell lancera une erreur. Faisons de l'expérience via l'exemple suivant, où nous avons limité le temps d'attente à 5 secondes:

Écriture-hôte "En attendant qu'un processus s'arrête!"
Processe d'attente -processName HP.Myhp -Timeout 5

Exécutons le script et regardons la sortie:

Il est observé qu'après avoir attendu 5 secondes, PowerShell a lancé une erreur qui HP.Myhp ne s'est pas arrêté à l'heure spécifiée.

Point bonus: Le tableau suivant considère quatre facteurs principaux pour faire la différence entre le processus d'attente et la mise en sommeil de départ.

Facteurs Processus d'attente Commencer à endormir
But Pause l'exécution du script. Pause l'exécution du script.
Portée d'applicabilité Il est appliqué pour attendre les processus uniquement. Il peut être appliqué pour suspendre la session / l'activité à tout moment. La portée du début du sommeil est plus large que le processus d'attente.
Paramètres communs Prend en charge les paramètres communs. Prend également en charge les paramètres de powerShell commun.
Time Quelques secondes seulement. Secondes ou millisecondes.

Vous auriez mieux compris la différence entre le processus d'attente et le début de la sommeil à PowerShell.

Conclusion

Début-sommeil suspend ou pause le script pendant une certaine période de temps. En revanche, l'attaque d'attente attend un processus avant d'accepter un autre processus. Les deux méthodes sont utilisées comme méthodes de pause dans PowerShell. Vous avez appris à appliquer le début de la commande de début et de traitement d'attente et leur différence également. Principalement, ces applets de commande diffèrent dans la portée d'applicabilité. Cependant, les deux servent le même objectif: une pause de l'exécution du script PowerShell.