Różnica między snem początkowym a procesem oczekiwania

Różnica między snem początkowym a procesem oczekiwania
W skryptach PowerShell istnieje wiele metod optymalizacji skryptów. Na przykład metody zatrzymywania PowerShell mają na celu zatrzymanie skryptu na określony czas lub czekać na rozwiązanie innego procesu przed kontynuowaniem wykonania. Początkowe sno i proces oczekiwania należą do kategorii metod pauzy PowerShell.

Początkowe skoczki zatrzymuje wykonanie przez określony czas. Z drugiej strony, proces oczekiwania czeka na zakończenie procesu, a następnie kontynuuje wykonanie.

Biorąc pod uwagę ich znaczenie, skompilowaliśmy ten przewodnik po rozróżnieniu między cmdletami Sleep Start-Sleep i.

Różnica między snem początkowym a procesem oczekiwania

Proces oczekiwania cmdlet czeka na zatrzymanie jednego procesu przed zaakceptowaniem innego procesu, podczas gdy Sleep startowy cmdlet jest wykorzystywany do zawieszenia lub wstrzymania skryptu na określony okres. Dla lepszego zrozumienia wykazaliśmy wyraźnie wykorzystanie początkowego snu i oczekiwania.

Jak działa początek w PowerShell?

Nadchodzi czas, kiedy musimy zatrzymać lub zawiesić skrypt w PowerShell na określony okres. Może istnieć wiele powodów, aby zatrzymać wykonanie skryptu. Na przykład, jeśli chcesz przedłużyć czas wykonywania skryptu lub ograniczyć czas przyjmowania danych wejściowych od użytkownika.

Składnia

> Start-Sleep <-Seconds> <-Milliseconds> <-Parameters>

W składni:

  • -Sekundowe i -milisekund odnoszą się do jednostek czasu. Sekundy powinny znajdować się w podwójnym danych, podczas gdy milisekundy muszą być wartością liczb całkowitych.
  • Oznacza zbiór wspólnych parametrów, które mają zastosowanie do wszystkich cmdletów PowerShell. Powszechnie używane parametry obejmują, Odpluskwić, Błąd, BłądVariable, Informacje, Informacje na temat itp.

Przykład: Zatrzymaj skrypt na określony czas
Aby zastosować s-sleep, stworzyliśmy przykładowy skrypt. Sleep startowy jest używany między dwoma CMDLETS-HOST WRETP-HOST W poniższym przykładowym kodzie. Niedoszły oczekiwanie 5 sekund po pierwszym hostacie i przed drugim hostem:

Write-host „Używanie snu startowego”
Start -Sleep -sekundy 5
Write-host „kod po snoprzestrzeniu”

Wykonajmy skrypt:

Dane wyjściowe pokazuje, że linia po cmdlecie z szybkim uruchomieniem jest wykonywana po 5 sekundach oczekiwania.

Jak działa proces oczekiwania w PowerShell?

CMDLET CMDLET z oczekiwaniami czeka na jeden proces, zanim przejdzie do dalszej realizacji skryptu. Domyślnie proces oczekiwania będzie czekać na niezdefiniowany czas. Możesz jednak ograniczyć czas oczekiwania. Składnia procesu oczekiwania znajduje się poniżej:

Składnia

> Proces oczekiwania <-Name> <-Time> <-Parameters>

W składni:

  • -Nazwa Parametr odnosi się do nazwy procesu.
  • -Czas Parametr służy do ograniczenia czasu oczekiwania.
  • -Parametry oznacza niektóre z powszechnie używanych parametrów, takich jak debugowanie, błąd itp.

Rozumiemy to wyraźniej, używając przykładu.

Przykład: Poczekaj na proces
Jak wiemy, proces cmdlet oczekujących czeka na jeden proces, a następnie przyjmuje inny proces. W poniższym przykładzie proces oczekiwania jest stosowany na HP.Myhp proces. Tutaj cmdlet z oczekiwaniami będzie czekać na HP.Myhp przetwarzaj przed kontynuowaniem dalszego wykonywania:

Write-host „Korzystanie z procesu oczekiwania!"
PROCESE -PROCESS -Processname HP.Myhp
Write-host „hp.Proces MyHP został zatrzymany!"

Teraz wykonaj skrypt:

Zauważysz, że kursor będzie nadal tykający i nie będzie kontynuował dalszego wykonywania, jeśli proces nie zostanie zatrzymany.

Możesz także określić czas w trakcie oczekiwania, a jeśli proces nie zostanie zatrzymany w limicie czasu, wówczas PowerShell rzuci błąd. Doświadczmy tego za pomocą następującego przykładu, w którym ograniczyliśmy czas oczekiwania do 5 sekund:

Write-host „Oczekiwanie na zatrzymanie procesu!"
PROCESE -PROCESS -Processname HP.MyHP -Timeout 5

Wykonajmy skrypt i spójrzmy na dane wyjściowe:

Zauważono, że po oczekiwaniu przez 5 sekund PowerShell rzucił błąd HP.Myhp nie zatrzymał się w określonym czasie.

Punkt bonusowy: Poniższa tabela uwzględnia cztery podstawowe czynniki rozróżnienia między procesem oczekiwania a cmdletem początkowym.

Czynniki Proces oczekiwania Sleep startowy
Zamiar Zatrzymaj wykonanie skryptu. Zatrzymaj wykonanie skryptu.
Zakres możliwości zastosowania Jest stosowany, aby czekać tylko na procesy. Można go zastosować do zawieszenia sesji/aktywności w dowolnym momencie. Zakres początkowego snu jest szerszy niż proces oczekiwania.
Wspólne parametry Obsługuje wspólne parametry. Obsługuje również wspólne parametry PowerShell.
Jednostka czasu Tylko sekundy. Sekundy lub milisekundy.

Lepiej zrozumiałbyś różnicę między procesem oczekiwania a snem początkowym w PowerShell.

Wniosek

Początkowe sleep zawiesza lub zatrzymuje skrypt na określony czas. Natomiast proces cmdlet oczekiwania czeka na jeden proces przed zaakceptowaniem innego procesu. Obie metody są stosowane jako metody zatrzymujące się w PowerShell. Nauczyłeś się stosować CMDLEL. Przede wszystkim te CMDLET różnią się zakresem zastosowania. Oba służą jednak temu samemu celowi: zatrzymać wykonanie skryptu PowerShell.