Unterschied zwischen Startschlafen und Wartungsprozess

Unterschied zwischen Startschlafen und Wartungsprozess
In PowerShell Scripting gibt es zahlreiche Methoden zur Optimierung der Skripte. Zum Beispiel sollen PowerShell -Pause -Methoden das Skript für eine bestimmte Zeit pausieren oder auf einen anderen Prozess warten, bevor die Ausführung fortgesetzt wird. Start-Sleep und Wait-Process gehören zur Kategorie PowerShell pauzieren Methoden.

Start-Sleep-Pause die Ausführung für eine bestimmte Zeit. Auf der anderen Seite wartet Wait-Process auf ein Vorgang und setzt dann die Ausführung fort.

In Anbetracht ihrer Bedeutung haben wir diesen Leitfaden zusammengestellt, um zwischen Startschlafen und CMDLets auf Wait-Prozess zu differenzieren.

Unterschied zwischen Startschlafen und Wartungsprozess

Der Warteverfahren CMDLET wartet darauf, dass ein Prozess aufhört, bevor er einen anderen Prozess akzeptiert, während die Startschlafen CMDLET wird verwendet. Für ein besseres Verständnis haben wir die Verwendung des Startschlafens und des Wait-Prozesss ausdrücklich demonstriert.

Wie funktioniert Startschlaf in Powershell??

Es kommt eine Zeit, in der wir das Skript in PowerShell für einen bestimmten Zeitraum innehalten oder aussetzen müssen. Es könnte viele Gründe geben, die Ausführung des Skripts zu pausieren. Wenn Sie beispielsweise die Ausführungszeit des Skripts verlängern möchten oder die Zeit für die Eingabe des Benutzers einschränken möchten.

Syntax

> Startschlafen <-Seconds> <-Milliseconds> <-Parameters>

In der Syntax:

  • Die Sekunden und -millisekunden beziehen sich auf die Zeiteinheiten der Zeit. Die Sekunden sollten im doppelten Datenatyp sein, während Millisekunden ein ganzzahliger Wert sein müssen.
  • Der Satz der gemeinsamen Parameter, die mit allen PowerShell -CMDlets anwendbar sind. Die häufig verwendeten Parameter umfassen, Debuggen, Fehleraktion, Fehlervariable, Information, InformationVariable usw.

Beispiel: Pause das Skript für eine bestimmte Zeit
Um das Startschlafen anzuwenden, haben wir ein Beispielskript erstellt. Das Startschlafen wird im folgenden Beispielcode zwischen zwei CMDlets für Schreib-Wirt-CMDlets verwendet. Das potenzielle Warten von 5 Sekunden nach dem ersten Schreibhost und vor dem zweiten Schreibhost:

Schreibhost "mit Startschlafen"
Startschlafen -Sekunden 5
Schreibhost "Der Code nach dem Startschlaf"

Lassen Sie uns das Skript ausführen:

Die Ausgabe zeigt, dass die Linie nach dem Startschlafen-CMDLet nach 5 Sekunden Wartezeit ausgeführt wird.

Wie funktioniert Wait-Process in PowerShell??

Das Wartungsverfahren cmdlet wartet darauf, dass ein Vorgang aufhört, bevor er auf die weitere Ausführung des Skripts geht. Standardmäßig wartet der Warteverfahren auf eine undefinierte Zeit. Sie können jedoch auch die Zeit für das Warten einschränken. Die Syntax des Warteverfahrens ist unten bereitgestellt:

Syntax

> Wait-Prozess <-Name> <-Time> <-Parameters>

In der Syntax:

  • Der -Name Der Parameter bezieht sich auf den Namen des Prozesses.
  • Der -Zeit Der Parameter wird verwendet, um die Wartezeit zu begrenzen.
  • Der -Parameter Bezeichnen Sie einige der häufig verwendeten Parameter wie Debug, Fehler um Debug, usw.

Lassen Sie es uns klarer mit dem Beispiel verstehen.

Beispiel: Warten Sie auf einen Prozess
Wie wir wissen, wartet das CMDLET des Warteverfahrens auf einen Prozess und akzeptiert dann einen anderen Prozess. Im folgenden Beispiel wird der Warteverfahren auf dem angewendet HP.Myhp Verfahren. Hier warten das Wartungsverfahren CMDLET auf die HP.Myhp Prozess vor fortlaufender weitere Ausführung:

Schreib-Host “Verwenden des Wartungsverfahrens!”
Wait -Process -prozessname HP.Myhp
Schreib-Host “Die HP.Der MyHP -Prozess wurde gestoppt!”

Führen Sie nun das Skript aus:

Sie werden feststellen, dass der Cursor weiter tickt und die weitere Ausführung nicht fortsetzt, wenn der Prozess nicht gestoppt wird.

Sie können auch die Zeit im Wait-Prozess angeben. Wenn der Vorgang innerhalb der Zeitlimit nicht gestoppt wird, wirft PowerShell einen Fehler auf. Lassen Sie es uns anhand des folgenden Beispiels erleben, wo wir die Wartezeit auf 5 Sekunden beschränkt haben:

Schreibhost "Warten auf einen Prozess, der aufhört!"
Wait -Process -prozessname HP.MyHP -Timeout 5

Führen wir das Skript aus und schauen uns die Ausgabe an:

Es wird beobachtet, dass PowerShell nach 5 Sekunden Wartezeit einen Fehler warf, der HP.Myhp Halt nicht zur angegebenen Zeit auf.

Bonuspunkt: Die folgende Tabelle berücksichtigt vier Hauptfaktoren, um zwischen dem Wartelprozess und dem Startschlafen-CMDLET zu unterscheiden.

Faktoren Warteverfahren Startschlafen
Zweck Pause die Ausführung des Skripts. Pause die Ausführung des Skripts.
Anwendbarkeitsbereich Es wird angewendet, um nur auf Prozesse zu warten. Es kann jederzeit angewendet werden, um die Sitzung/Aktivität zu suspendieren. Der Umfang des Startschlafens ist breiter als Wait-Prozess.
Gemeinsame Parameter Unterstützt gemeinsame Parameter. Unterstützt auch gemeinsame PowerShell -Parameter.
Zeiteinheit Nur Sekunden. Sekunden oder Millisekunden.

Sie hätten den Unterschied zwischen dem Wartemeister und dem Startschlafen in Powershell besser verstanden hätten.

Abschluss

Start-Sleep Suspends oder Pause das Skript für einen bestimmten Zeitraum. Im Gegensatz dazu wartet das CMDLET des Warteprozesses auf einen Prozess, bevor er einen anderen Prozess akzeptiert. Beide Methoden werden in PowerShell als pausierende Methoden verwendet. Sie haben gelernt, CMDLET und deren Unterschiede auf dem Schlafen- und Wartemittel anzuwenden. In erster Linie unterscheiden sich diese CMDlets im Anwendbarkeitsbereich. Beide dienen jedoch dem gleichen Zweck: die Ausführung des PowerShell -Skripts durchzuführen.