1
我確定我不是第一個嘗試此操作的人,但無法找到關於它的單個帖子。在單個工作流程中嵌套兩個工作流程以並行運行
我正在嘗試在單個工作流程中嵌套兩個工作流程,因此這兩個工作流程並行工作,並獲得10個進程。這是我第一次嘗試:
Workflow a {
param(
[parameter()]alist
)
sequence
{
$WORKFLOW:aOutput = @()
foreach ($aObject in $aList)
{
$WORKFLOW:aOutput += do_stuff
}
return $WORKFLOW:aOutput
}
)
}
Workflow b {
param(
[parameter()]blist
)
sequence
{
$WORKFLOW:bOutput = @()
foreach ($bObject in $bList)
{
$WORKFLOW:bOutput += do_stuff
}
return $WORKFLOW:bOutput
}
)
}
Workflow nest
{
param(
[parameter()]alist,
[parameter()]blist
)
parallel
{
$aOutput = b -alist alist
$bOutput = b -blist blist
}
return ($aOutput,$bOutput)
}
這一切的偉大工程,但只有旋轉起來5個並行進程而不是10所以我嘗試這樣的:
Workflow nest
{
param(
[parameter()]alist,
[parameter()]blist
)
parallel
{
$aOutput = inlinescript
{
Workflow a {
param(
[parameter()]alist
)
sequence
{
$WORKFLOW:aOutput = @()
foreach ($aObject in $aList)
{
$WORKFLOW:aOutput += do_stuff
}
return $WORKFLOW:aOutput
}
}
$bOutput = inlinescript
{
Workflow b {
param(
[parameter()]blist
)
sequence
{
$WORKFLOW:bOutput = @()
foreach ($bObject in $bList)
{
$WORKFLOW:bOutput += do_stuff
}
return $WORKFLOW:bOutput
}
)
}
b -blist blist
}
}
return ($aOutput,$bOutput)
}
我有這裏的問題是它拋出在內聯塊內使用範圍WORKFLOW的錯誤。錯誤說使用範圍USING代替,但是當我切換到關於重新定義foreach-parallel塊內的變量時出現錯誤。
我在找什麼是可能的,如果是的話需要使用哪些範圍來嵌套工作流?還是有另一種方法讓工作流同時運行5個進程?
爲僞代碼道歉,但實際代碼包含我無法共享的信息。