|Home > Iris APIs > Per-instance execution control API|
Per-instance execution control allows clients to enable or disable execution of individual targets. The per-instance execution state is maintained in each instance and is shared by all callers and clients.
Execution of an instance can only progress while the simulation time of the whole system progresses. Therefore, the per-instance execution control cannot progress the state of individual components when the simulation time is stopped.
To achieve the effect of progressing execution of a single instance only, the per-instance execution of all other instances that support this feature is disabled and then the simulation time is progressed, either by free running it or by letting it run to a breakpoint.
Updating the per-instance execution state of one or more instances while the simulation time is running is allowed, but has undefined results, because the instances might detect the state change after an undefined delay. Updating the per-instance execution state is only guaranteed to work deterministically while the simulation time is stopped.
$PVLIB_HOME/Iris/Examples/Client/ExecutionControl/ contains an example client application that demonstrates how to use this API.