The events and threads both have state machines, that need to be called repeatedly to finish their respective actions.
For example, to fully commit an event, __events_commit must be called twice after adding the event to the queue. Similarly, the thread __tick function must be called at least 2 times to finish a task execution (if the task is not an entry task).
The scheduler only calls each of these functions once after a reboot. This is not enough to fully commit the events or tasks in some cases, and may then lead to incorrect program behavior.
The events and threads both have state machines, that need to be called repeatedly to finish their respective actions.
For example, to fully commit an event,
__events_commitmust be called twice after adding the event to the queue. Similarly, the thread__tickfunction must be called at least 2 times to finish a task execution (if the task is not an entry task).The scheduler only calls each of these functions once after a reboot. This is not enough to fully commit the events or tasks in some cases, and may then lead to incorrect program behavior.