Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
РАЗДЕЛ
about_Suspend-Workflow
КРАТКОЕ ОПИСАНИЕ
Описание действия Suspend-Workflow, приостанавливающее выполнение рабочего процесса, в котором отображается действие.
ПОДРОБНОЕ ОПИСАНИЕ
Действие Suspend-Workflow временно останавливает обработку рабочего процесса из самого рабочего процесса. Перед приостановкой Windows PowerShell® Workflow устанавливает контрольную точку, поэтому состояние и данные рабочего процесса сохраняются, и рабочий процесс можно возобновить с данного момента приостановки.
Чтобы возобновить рабочий процесс, пользователь, запускающий рабочий процесс, использует командлет Resume-Job. Нельзя возобновить рабочий процесс из самого этого рабочего процесса.
СИНТАКСИС
workflow <Verb-Noun>
{
Suspend-Workflow
}
ПОДРОБНОЕ ОПИСАНИЕ
Действие Suspend-Workflow временно останавливает рабочий процесс и возвращает объект задания, представляющий задание рабочего процесса. Объект задания возвращается, даже если рабочий процесс не запускался в качестве задания, например с помощью общего параметра рабочего процесса AsJob. Задание находится в приостановленном состоянии.
Для управления приостановленным заданием рабочего процесса можно использовать командлеты заданий. Для возобновления задания рабочего процесса используется командлет Resume-Job.
При возобновлении задания рабочего процесса рабочий процесс возобновляется с выполнения команды, которая следует за действием Suspend-Workflow.
Например, следующий рабочий процесс содержит действие Suspend-Workflow. Запущенный рабочий процесс выполняет действие Get-Date, сохраняет выходные данные в переменную $a, а затем приостанавливает рабочий процесс и возвращает объект задания, представляющий приостановленный рабочий процесс. Задание имеет тип PSWorkflowJob.
Workflow Test-Suspend
{
$a = Get-Date
Suspend-Workflow
(Get-Date)- $a
}
PS C:\>Test-Suspend
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
8 Job8 PSWorkflowJob Suspended True localhost Test-Suspend
Для управления заданием рабочего процесса можно использовать командлеты заданий, например Get-Job.
ВОЗОБНОВЛЕНИЕ ЗАДАНИЯ РАБОЧЕГО ПРОЦЕССА
Для возобновления задания рабочего процесса используется командлет Resume-Job. Командлет Resume-Job возвращает объект задания рабочего процесса немедленно и даже несмотря на то, что задание еще может быть не возобновлено. Чтобы дождаться возобновления задания, используйте параметр Wait, или воспользуйтесь командлетом Get-Job для получения объекта текущего задания.
PS C:\>Resume-Job -Name Job8
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
8 Job8 PSWorkflowJob Suspended True localhost Test-Suspend
PS C:\>Get-Job -Name Job8
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
8 Job8 PSWorkflowJob Completed True localhost Test-Suspend
ПОЛУЧЕНИЕ ВЫХОДНЫХ ДАННЫХ ЗАДАНИЯ РАБОЧЕГО ПРОЦЕССА
Для получения выходных данных задания рабочего процесса используйте командлет Receive-Job. Выходные данные показывают, что рабочий процесс возобновлен с команды, которая следовала за командлетом Suspend-Workflow. Значение переменной $a, которая была заполнена до приостановки, становится доступным для рабочего процесса после его возобновления.
PS C:\>Get-Job -Name Job8 | Receive-Job
Days : 0
Hours : 0
Minutes : 0
Seconds : 19
Milliseconds : 823
Ticks : 198230041
TotalDays : 0.000229432917824074
TotalHours : 0.00550639002777778
TotalMinutes : 0.330383401666667
TotalSeconds : 19.8230041
TotalMilliseconds : 19823.0041
PSComputerName : localhost
СМ. ТАКЖЕ
about_Workflows
Приступая к работе с Windows PowerShell Workflow (https://go.microsoft.com/fwlink/?LinkID=252592)