Diferencia entre inicio y proceso de espera

Diferencia entre inicio y proceso de espera
En las secuencias de comandos de PowerShell, existen numerosos métodos para optimizar los scripts. Por ejemplo, los métodos de pausa de PowerShell están destinados a detener el script por un tiempo específico o esperar a que termine algún otro proceso antes de continuar la ejecución. Inicie y el proceso de espera pertenecen a la categoría de métodos de pausa de PowerShell.

Iniciar el sueño detiene la ejecución por un tiempo especificado. Por otro lado, el proceso de espera espera un proceso para terminar y luego continúa la ejecución.

Teniendo en cuenta su importancia, hemos compilado esta guía para diferenciar entre cmdlets de proceso de inicio y proceso de espera.

Diferencia entre inicio y proceso de espera

El Proceso de espera cmdlet espera a que un proceso se detenga antes de aceptar otro proceso, mientras que el Emprender el sueño cmdlet se utiliza para suspender o detener el script por un cierto período. Para una mejor comprensión, hemos demostrado el uso de inicio y proceso de espera explícitamente.

¿Cómo funciona el sueño inicio en PowerShell??

Llega un momento en que necesitamos detenernos o suspender el guión en PowerShell por un período de tiempo específico. Podría haber muchas razones para detener la ejecución del script. Por ejemplo, si desea extender el tiempo de ejecución del script o desea limitar el tiempo para tomar la entrada del usuario.

Sintaxis

> Inicio dormido <-Seconds> <-Milliseconds> <-Parameters>

En la sintaxis:

  • Los segundos y los milisegundos se refieren a las unidades del tiempo. Los segundos deben estar en doble tipo de datos, mientras que los milisegundos deben ser un valor entero.
  • El denota el conjunto de parámetros comunes que son aplicables con todos los cmdlets de PowerShell. Los parámetros de uso común incluyen, Depurar, ErrorAction, ErrorVariable, InformationAction, InformationVariable etc.

Ejemplo: pause el script por un tiempo específico
Para aplicar el sueño de inicio, hemos creado un script de ejemplo. El sueño inicio se usa entre dos cmdlets de escritura en el siguiente código de ejemplo. El aspirante a esperar 5 segundos después del primer huésped de escritura y antes del segundo huésped de escritura:

Escritura-anfitrión "Usando inicio"
Inicio -sueño -seconds 5
Escritura-anfitrión "El código después de dormir"

Ejecutemos el script:

La salida muestra que la línea después del cmdlet de inicio se ejecuta después de 5 segundos de espera.

¿Cómo funciona el proceso de espera en PowerShell??

El cmdlet de proceso de espera espera a que un proceso se detenga antes de ir hacia una mayor ejecución del script. Por defecto, el proceso de espera esperará un tiempo indefinido. Sin embargo, también puede limitar el tiempo para la espera. La sintaxis del proceso de espera se proporciona a continuación:

Sintaxis

> Proceso de espera <-Name> <-Time> <-Parameters>

En la sintaxis:

  • El -Nombre El parámetro se refiere al nombre del proceso.
  • El -Tiempo El parámetro se usa para limitar el tiempo de espera.
  • El -Parámetros denotar algunos de los parámetros comúnmente utilizados, como la depuración, el error de error, etc.

Entendamos más claramente usando el ejemplo.

Ejemplo: espera un proceso
Como sabemos, el cmdlet de proceso de espera espera un proceso y luego acepta otro proceso. En el siguiente ejemplo, el proceso de espera se aplica en el HP.Myhp proceso. Aquí, el cmdlet de proceso de espera esperará el HP.Myhp proceso antes de continuar la ejecución adicional:

Escritura-anfitrión "Usando procesos de espera!"
Wait -Process -ProcessName HP.Myhp
Escritura-anfitrión "el HP.El proceso myHP ha sido detenido!"

Ahora, ejecute el script:

Observará que el cursor seguirá marcando y no continuará la ejecución adicional si el proceso no se detiene.

También puede especificar el tiempo en el proceso de espera y si el proceso no se detiene dentro del límite de tiempo, entonces PowerShell lanzará un error. Vamos a experimentarlo a través del siguiente ejemplo, donde hemos limitado el tiempo de espera a 5 segundos:

Host de escritura "Esperando que se detenga!"
Wait -Process -ProcessName HP.MyHP -TimeOut 5

Ejecutemos el script y veamos la salida:

Se observa que después de esperar 5 segundos, PowerShell lanzó un error que HP.Myhp no se detuvo en el momento especificado.

Punto de bonificación: La siguiente tabla considera cuatro factores principales para diferenciar entre el proceso de espera y el cmdlet de sueño inicio.

Factores Proceso de espera Emprender el sueño
Objetivo Pausa la ejecución del script. Pausa la ejecución del script.
Alcance de aplicabilidad Se aplica solo para esperar procesos. Se puede aplicar para suspender la sesión/actividad en cualquier momento. El alcance del sueño inicio es más amplio que el proceso de espera.
Parámetros comunes Admite parámetros comunes. También admite parámetros de PowerShell comunes.
Unidad de tiempo Solo segundos. Segundos o milisegundos.

Más mejor habría entendido la diferencia entre el proceso de espera y el sueño de inicio en PowerShell.

Conclusión

Iniciar el sueño suspende o detiene el guión por un cierto período de tiempo. En contraste, el cmdlet de procesamiento de espera espera un proceso antes de aceptar otro proceso. Ambos métodos se utilizan como métodos de pausa en PowerShell. Has aprendido a aplicar el cmdlet de inicio y el proceso de espera y su diferencia también. Principalmente, estos cmdlets difieren en el alcance de aplicabilidad. Sin embargo, ambos tienen el mismo propósito: pausar la ejecución del script de PowerShell.