-
Notifications
You must be signed in to change notification settings - Fork 0
Description
A Simulation should be able to create simulation children, run them on the same Coordinator and wait for them to complete before making more progress.
We would need a Simulation.sim(name: String, actor: ActorRef) type of method (or similar).
It would be nice and symmetrical to maintain this in the Coordinator, the same way that we maintain Tasks.
We can extend:
- the
AddSimmessages, - the
StartingSimevent and - the
simulationsset
They need to include an Option[ActorRef] where we report when a (child) simulation has finished (while adding that actor to the waiting list).
Do we need simulations to have a UUID so the simulation can "ack" them when finished reacting, similarly to tasks? How do we add this without too much additional complexity? We could use the simulation name or ActorRef instead (also assumed unique), but they won't fit in waiting. If we add another waiting map, we'll have to check in that too every time we check a simulation is ready to go.