@startuml scale 520 height skinparam backgroundColor transparent skinparam shadowing false skinparam defaultFontName Monospace skinparam defaultFontSize 11 skinparam sequenceArrowColor #8095a1 skinparam sequenceLifeLineBorderColor #8095a1 title A5 FLOW — ALL-ready wait and reusable barrier participant Coordinator as C participant "Worker A" as A participant "Worker B" as B participant EventGroup as G participant Verifier as V C -> G : 02 wait READY_ALL; block A -> G : 03 set READY_A A -> G : 04 sync(SYNC_A); block B -> B : 05 observe READY_A|SYNC_A; A Blocked B -> G : set READY_B G --> C : 06 READY_ALL; clear READY bits C -> G : sync(SYNC_C); block B -> B : 07 coordinator Blocked B -> G : sync(SYNC_B) = final bit G --> C : 08 SYNC_ALL G --> A : 09 SYNC_ALL G --> B : 10 SYNC_ALL; clear sync bits B -> V : workers complete V -> G : 11 final bits = 0; PASS @enduml