... | ... | @@ -6,14 +6,14 @@ |
|
|
|
|
|
This module allows for two kinds of tasks to be scheduled:
|
|
|
|
|
|
* An uninterruptible periodic task;
|
|
|
* An uninterruptible synchronous task;
|
|
|
* Various asynchronous tasks.
|
|
|
|
|
|
In any case, tasks must NOT contain an infinite loop (such as `while(1)`): tasks are executed either periodically by the API (synchronous tasks), or run in background in a loop managed by the API itself (asynchronous tasks).
|
|
|
|
|
|
## Uninterruptible periodic task
|
|
|
## Uninterruptible synchronous task
|
|
|
|
|
|
This task is intended at containing all priority control code.
|
|
|
This task is run periodically and is intended at containing all priority control code.
|
|
|
|
|
|
It is implemented as an interrupt triggered by a timer and will run with absolute priority over any other tasks.
|
|
|
|
... | ... | |