36 lines
857 B
Plaintext
36 lines
857 B
Plaintext
@startuml
|
|
!include card-uml-style.iuml
|
|
scale 900 width
|
|
hide footbox
|
|
skinparam ParticipantPadding 18
|
|
|
|
participant "main" as Main
|
|
participant "workerA ctx" as A
|
|
participant "workerB ctx" as B
|
|
participant "sum_task_entry" as Entry
|
|
participant "FreeRTOS" as Kernel
|
|
participant "supervisor" as Supervisor
|
|
|
|
activate Kernel
|
|
Kernel -> Entry : <b>06</b> entry(&workerA)
|
|
activate Entry
|
|
||30||
|
|
Entry -> A : <b>07</b> typed context; RUNNING
|
|
||30||
|
|
Kernel -> B : <b>08</b> tick: A -> B -> A
|
|
||30||
|
|
Entry -> A : <b>09</b> result = 200010000
|
|
||30||
|
|
Entry -> A : <b>10</b> COMPLETED; handle = NULL
|
|
||30||
|
|
Entry -> Kernel : <b>11</b> vTaskDelete(NULL)
|
|
deactivate Entry
|
|
||30||
|
|
Kernel -> Supervisor : <b>12</b> verify both contexts -> PASS
|
|
activate Supervisor
|
|
|
|
note over A,Supervisor
|
|
Static contexts survive self-delete. Idle cleanup of TCB/stack is later.
|
|
end note
|
|
@enduml
|