Поделиться через


about_Sequence

Краткое описание

Описывает Sequence ключевое слово, которая выполняет выбранные действия последовательно.

Подробное описание

Ключевое слово Sequence последовательно выполняет выбранные действия рабочего процесса. Действия рабочего процесса выполняются в том порядке, в который они отображаются и не выполняются одновременно. Ключевое слово действителен Sequence только в рабочем процессе PowerShell.

Ключевое слово Sequence используется в блоке Parallel скрипта для последовательного выполнения выбранных команд.

Так как действия рабочего процесса выполняются последовательно по умолчанию, Sequence ключевое слово действует только в блоке скриптаParallel. Sequence Если ключевое слово не входит в Parallel блок скрипта, это допустимо, но неэффективно.

Блок Sequence скрипта позволяет выполнять дополнительные команды параллельно, позволяя выполнять зависимые команды последовательно.

Синтаксис

Рабочий процесс с помощью последовательности

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

Рабочий процесс с использованием параллельной и последовательности

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

Подробное описание

Команды в блоке Parallel скриптов могут выполняться одновременно. Порядок их запуска не определен. Эта функция повышает производительность рабочего процесса скрипта.

Вы можете использовать блок скрипта Sequence для последовательного выполнения выбранных действий, даже если действия отображаются в блоке скрипта Parallel .

Действия в блоке Sequence скрипта выполняются последовательно в порядке их перечисления. Действие в блоке Sequence скрипта начинается только после завершения предыдущего действия.

Однако если Sequence блок скрипта отображается в блоке Parallel скрипта, порядок Sequence выполнения блока скрипта не определен. Он может выполняться до, после или параллельно с другими действиями в блоке скрипта Parallel .

Например, следующий рабочий Parallel процесс включает блок скрипта, который выполняет действия, которые получают процессы и службы на компьютере. Блок Parallel скрипта содержит Sequence блок скрипта, который получает информацию из файла и использует сведения в качестве входных данных для скрипта.

Get-ServiceКомандыGet-Process, связанные с исправлениями, не зависят друг от друга. Команды могут выполняться одновременно или в любом порядке. Но команда, которая получает сведения о исправлении, должна выполняться перед командой, которая использует его.

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}
        }
    }
}

См. также