29 lines
826 B
Plaintext
29 lines
826 B
Plaintext
@startuml
|
|
scale max 900*520
|
|
skinparam backgroundColor transparent
|
|
skinparam shadowing false
|
|
skinparam defaultFontName "DejaVu Sans Mono"
|
|
skinparam defaultFontSize 13
|
|
skinparam stateBorderColor #2b6f8e
|
|
skinparam stateBackgroundColor #edf6fa
|
|
skinparam ArrowColor #8295a0
|
|
left to right direction
|
|
title A6 STATE — queue occupancy controls task readiness
|
|
|
|
state "01 EMPTY\nreceiver can block" as Empty
|
|
state "02 FULL(M2)\nsender can block" as Full
|
|
state "03 HANDOFF\nhigher receiver Ready" as Handoff
|
|
state "04 EMPTY\nspace wakes sender" as Space
|
|
state "05 FULL(M3)" as Full3
|
|
state "06 DONE\nFIFO 1,2,3" as Done
|
|
|
|
[*] --> Empty
|
|
Empty --> Handoff : send M1
|
|
Handoff --> Empty : receive M1
|
|
Empty --> Full : send M2
|
|
Full --> Space : receive M2
|
|
Space --> Full3 : blocked send completes
|
|
Full3 --> Done : receive M3
|
|
Done --> [*]
|
|
@enduml
|