about_Sequence

Kort beskrivning

Beskriver nyckelordet Sequence som kör valda aktiviteter sekventiellt.

Lång beskrivning

Nyckelordet Sequence kör valda arbetsflödesaktiviteter sekventiellt. Arbetsflödesaktiviteter körs i den ordning de visas och körs inte samtidigt. Nyckelordet Sequence är endast giltigt i ett PowerShell-arbetsflöde.

Nyckelordet Sequence används i ett Parallel skriptblock för att köra valda kommandon sekventiellt.

Eftersom arbetsflödesaktiviteter körs sekventiellt som standard gäller nyckelordet Sequence endast i ett Parallel skriptblock. Om nyckelordet Sequence inte ingår i ett Parallel skriptblock är det giltigt men ineffektivt.

Med Sequence skriptblocket kan du köra fler kommandon parallellt genom att köra beroende kommandon sekventiellt.

Syntax

Arbetsflöde med sekvens

workflow <Verb-Noun>
{
    Sequence
    {
        [<Activity>]
        [<Activity>]
        # ...
    }
}

Arbetsflöde med parallell och sekvens

workflow <Verb-Noun>
{
    Parallel
    {
        [<Activity>]
        Sequence
        {
            [<Activity>]
            [<Activity>]
            # ...
        }
    }
}

Detaljerad beskrivning

Kommandona i ett Parallel skriptblock kan köras samtidigt. I vilken ordning de körs bestäms inte. Den här funktionen förbättrar prestandan för ett skriptarbetsflöde.

Du kan använda ett Sequence skriptblock för att köra valda aktiviteter sekventiellt, även om aktiviteterna visas i ett Parallel skriptblock.

Aktiviteterna i ett Sequence skriptblock körs i följd i den ordning som de visas. En aktivitet i ett Sequence skriptblock startar först när den tidigare aktiviteten har slutförts.

Men när skriptblocket Sequence visas i ett Parallel skriptblock bestäms inte i vilken ordning skriptblocket Sequence körs. Den kan köras före, efter eller samtidigt med andra aktiviteter i skriptblocket Parallel .

Följande arbetsflöde innehåller till exempel ett Parallel skriptblock som kör aktiviteter som hämtar processer och tjänster på datorn. Skriptblocket Parallel innehåller ett Sequence skriptblock som hämtar information från en fil och använder informationen som indata till ett skript.

Kommandona Get-Process, Get-Serviceoch snabbkorrigeringar är oberoende av varandra. Kommandona kan köras samtidigt eller i valfri ordning. Kommandot som hämtar snabbkorrigeringsinformationen måste dock köras före kommandot som använder den.

workflow Test-Workflow
{
    Parallel
    {
    Get-Process
    Get-Service

    Sequence
    {
        $Hotfix = Get-Content 'D:\HotFixes\Required.txt'
        Foreach ($h in $Hotfix) {'D:\Scripts\Verify-Hotfix' -Hotfix $h}
        }
    }
}

Se även