Condividi tramite


about_Checkpoint-Workflow

DESCRIZIONE BREVE

Descrive l'attività Checkpoint-Workflow, che accetta un checkpoint in un flusso di lavoro.

DESCRIZIONE LUNGA

L'attività Checkpoint-Workflow accetta un checkpoint, che salva lo stato e i dati nel flusso di lavoro. Se il flusso di lavoro viene sospeso o interrotto, può essere ripreso dal checkpoint più recente, anziché dover essere riavviato.

L'attività Checkpoint-Workflow è valida solo in un flusso di lavoro.

SYNTAX

Workflow <Verb-Noun>
{
    Checkpoint-Workflow
}

L'attività Checkpoint-Workflow non accetta parametri, inclusi i parametri comuni e i parametri comuni del flusso di lavoro.

È possibile inserire il checkpoint Checkpoint-Activity in qualsiasi punto di un flusso di lavoro dopo l'istruzione CmdletBinding o Param. Tuttavia, quando si posizionano checkpoint, prendere in considerazione il costo delle prestazioni di raccolta dei dati e la scrittura su disco nel computer che esegue il flusso di lavoro.

Assicurarsi che il tempo impiegato per eseguire di nuovo una sezione del flusso di lavoro interrotto sia maggiore del tempo necessario per scrivere lo stato e i dati del checkpoint nel disco.

Prendere in considerazione l'esecuzione di checkpoint dopo i passaggi critici in modo che il flusso di lavoro possa essere ripreso anziché riavviato. Ad esempio, prendere un checkpoint dopo i comandi che non sono idempotenti.

INFORMAZIONI SUI CHECKPOINT

Un checkpoint è uno snapshot dello stato corrente del flusso di lavoro che include e salva su disco i valori correnti delle variabili e qualsiasi output generato fino a quel punto.

Se un flusso di lavoro viene interrotto, intenzionalmente o involontariamente, il flusso di lavoro di Windows PowerShell usa automaticamente i dati nel checkpoint più recente per ripristinare e riprendere il flusso di lavoro.

Quando si esegue il flusso di lavoro come processo, ad esempio usando il parametro comune del flusso di lavoro AsJob, i checkpoint del flusso di lavoro vengono mantenuti fino a quando non si elimina il processo, ad esempio usando il cmdlet Remove-Job. In caso contrario, i checkpoint del flusso di lavoro vengono eliminati al termine del flusso di lavoro.

ALTRE TECNICHE DI CHECKPOINT

Oltre all'attività Checkpoint-Workflow, il flusso di lavoro di Windows PowerShell supporta altre tecniche di checkpoint, tra cui:

  • Parametro comune del flusso di lavoro PSPersist
  • Parametro comune di attività PSPersist
  • Variabile PSPersistPreference (in un flusso di lavoro)

Per altre informazioni sull'aggiunta di un checkpoint a un flusso di lavoro, vedere "Come aggiungere checkpoint a un flusso di lavoro".

Esempi

Il flusso di lavoro seguente include una chiamata all'attività Checkpoint-Workflow dopo aver completato una funzione a esecuzione prolungata e uno script che condividono i dati.

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

    Invoke-LongRunningFunction
    {
        ...
    }
}

Vedi anche