about_Checkpoint-Workflow

DESCRIPCIÓN BREVE

Describe la actividad Checkpoint-Workflow, que toma un punto de control en un flujo de trabajo.

DESCRIPCIÓN LARGA

La actividad Checkpoint-Workflow toma un punto de control, que guarda el estado y los datos en el flujo de trabajo. Si el flujo de trabajo se suspende o se interrumpe, se puede reanudar desde el punto de control más reciente, en lugar de tener que reiniciarse.

La actividad Checkpoint-Workflow solo es válida en un flujo de trabajo.

SINTAXIS

Workflow <Verb-Noun>
{
    Checkpoint-Workflow
}

La actividad Checkpoint-Workflow no acepta ningún parámetro, incluidos los parámetros comunes y los parámetros comunes del flujo de trabajo.

Puede colocar el punto de control de la actividad de punto de control en cualquier lugar de un flujo de trabajo después de la instrucción CmdletBinding o Param. Sin embargo, al colocar puntos de control, tenga en cuenta el costo de rendimiento de recopilar los datos y escribirlos en el disco en el equipo que ejecuta el flujo de trabajo.

Asegúrate de que el tiempo necesario para volver a ejecutar una sección del flujo de trabajo si esta se interrumpe es mayor que el tiempo necesario para escribir el estado y los datos del punto de control en disco.

Considere la posibilidad de tomar puntos de control después de los pasos críticos para que el flujo de trabajo se pueda reanudar en lugar de reiniciarse. Por ejemplo, tome un punto de control después de los comandos que no sean idempotentes.

ACERCA DE LOS PUNTOS DE CONTROL

Un punto de control es una instantánea del estado actual del flujo de trabajo (incluidos los valores actuales de las variables) y cualquier resultado generado hasta ese momento, que lo guarda en disco.

Si se interrumpe un flujo de trabajo, intencionada o involuntariamente, el flujo de trabajo de Windows PowerShell usa automáticamente los datos en el punto de control más reciente para recuperar y reanudar el flujo de trabajo.

Al ejecutar el flujo de trabajo como un trabajo, como mediante el parámetro común del flujo de trabajo de AsJob, los puntos de control de flujo de trabajo se conservan hasta que se elimina el trabajo, como mediante el cmdlet Remove-Job. De lo contrario, los puntos de control de flujo de trabajo se eliminan cuando se completa el flujo de trabajo.

OTRAS TÉCNICAS DE CONTROL

Además de la actividad Checkpoint-Workflow, el flujo de trabajo de Windows PowerShell admite otras técnicas de control, incluidas las siguientes:

  • Parámetro común de flujo de trabajo PSPersist
  • Parámetros comunes de actividades PSPersist
  • Variable PSPersistPreference (en un flujo de trabajo)

Para obtener más información sobre cómo agregar un punto de control a un flujo de trabajo, vea "Cómo agregar puntos de control a un flujo de trabajo".

Ejemplos

El flujo de trabajo siguiente incluye una llamada a la actividad Checkpoint-Workflow después de completar una función de ejecución prolongada y un script que comparte datos.

Workflow Test-Workflow
{
    $a = Invoke-LongRunningFunction
    InlineScript { \\Server\Share\Get-DataPacks.ps1 $Using:a}
    Checkpoint-Workflow

    Invoke-LongRunningFunction
    {
        ...
    }
}

Consulte también