Scheduler
Overview
The scheduler is called in the main loop of the user application using the BLE_Kernel_Process() function.
IMPORTANT: For maximum stability, ensure that the user application calls BLE_Kernel_Process() at least once during each Bluetooth connection interval. For more information, see Baseband and Kernel Functions. |
In the user application’s main loop, the kernel checks if the event field is non-null, and executes the event handlers for which the corresponding event bit is set.
Requirements
Scheduling Algorithm
The "Scheduling Algorithm" figure shows how the scheduler handles messages. The message handler pops messages from the message queue, passes them to the pre-defined message handler, and then handles either releasing or saving those messages based on the responses from those handlers.
Save Service
The Save service can save a message (i.e., store it in memory without it being consumed). If the task state changes after a message is received, the scheduler tries to handle the saved message before scheduling any other signals.