join join#1 "join" @31:29 order=0 type="Item[]"
fan-out fan-out#1 "fan-out" @32:3 order=1 type="Item[]"
ask ask#1 "ask" head="worker-" @35:8 order=2 within=fan-out#1 type="Item"
actor actor#1 head="worker-" @33:5 order=3 within=fan-out#1
ask ask#2 "summarizer" @44:4 order=4 type="string"
actor actor#2 "summarizer" @42:23 order=5
fact ask-data ask#2 <- ask#1 exact
fact ask-data ask#2 <- join#1 exact
fact ask-data ask#2 <- fan-out#1 exact
fact ask-actor ask#1 <- actor#1 exact
fact ask-actor ask#2 <- actor#2 exact
fact join-in join#1 <- ask#1 exact
fact join-in join#1 <- fan-out#1 exact
fact return <- ask#1 exact
fact return <- join#1 exact
fact return <- ask#2 exact
fact return <- fan-out#1 exact
region seq#1 seq entered
region fanout#1 fanout parent=seq#1 @32:3 label="from"
region fanout#2 fanout parent=seq#1 @48:13 label="reduce"
region choice#1 choice parent=fanout#2 @48:42 entered
region branch#1 branch parent=choice#1 @48:57
mark phase#1 in=seq#1
spawn actor#1 in=seq#1>fanout#1
issue ask#1 in=seq#1>fanout#1 phase=phase#1
settle ask#1 in=seq#1
mark phase#2 in=seq#1
spawn actor#2 in=seq#1
issue ask#2 in=seq#1 phase=phase#2
settle ask#2 in=seq#1
jump return seq#1 in=seq#1 phase=phase#2
control branch#1 by=ask#1
phase phase#1 "并发发起 50 个独立 worker" @27:1
phase phase#2 "汇总 50 个 worker 的产物" @41:1
