PlantUML:重叠激活(多线程)
PlantUML: overlapping activations (multiple threads)
我试图在我的序列图中显示重叠激活(我使用的是 PlantUML),但它们显示为嵌套激活:
例如:
@startuml
participant T1
participant T2
participant Main
T1 -> Main ++ #red: start
T2 -> Main ++ #yellow: start
Main --> T1 -- #red : done
Main --> T2 -- #yellow : done
@enduml
这将显示嵌套的 red/yellow 激活,而我期望红色在黄色之前完成。
支持吗?我做错了什么吗?
谢谢!
如果我正确理解了这个问题,那么您是在试图表明 Main
可以并行激活。如果是这样,您应该使用 par 片段来指示并行操作(请参阅 Parallel 片段)。这可以描述如下:
@startuml
participant T1
participant T2
participant Main
par
T1 -> Main ++ #red: start
Main --> T1 -- #red : done
else
T2 -> Main ++ #yellow: start
Main --> T2 -- #yellow : done
end
@enduml
虽然 else
关键字通常用于 alt/else 片段,但它也可以用于其他组类型以添加视觉分隔符。上面的结果图如下所示。
我试图在我的序列图中显示重叠激活(我使用的是 PlantUML),但它们显示为嵌套激活:
例如:
@startuml
participant T1
participant T2
participant Main
T1 -> Main ++ #red: start
T2 -> Main ++ #yellow: start
Main --> T1 -- #red : done
Main --> T2 -- #yellow : done
@enduml
这将显示嵌套的 red/yellow 激活,而我期望红色在黄色之前完成。
支持吗?我做错了什么吗?
谢谢!
如果我正确理解了这个问题,那么您是在试图表明 Main
可以并行激活。如果是这样,您应该使用 par 片段来指示并行操作(请参阅 Parallel 片段)。这可以描述如下:
@startuml
participant T1
participant T2
participant Main
par
T1 -> Main ++ #red: start
Main --> T1 -- #red : done
else
T2 -> Main ++ #yellow: start
Main --> T2 -- #yellow : done
end
@enduml
虽然 else
关键字通常用于 alt/else 片段,但它也可以用于其他组类型以添加视觉分隔符。上面的结果图如下所示。