Module rtos

Module rtos 

Source

Constants§

E_NOTIFY_ACTION_BITS
E_NOTIFY_ACTION_INCR
E_NOTIFY_ACTION_NONE
E_NOTIFY_ACTION_NO_OWRITE
E_NOTIFY_ACTION_OWRITE
E_TASK_STATE_BLOCKED
E_TASK_STATE_DELETED
E_TASK_STATE_INVALID
E_TASK_STATE_READY
E_TASK_STATE_RUNNING
E_TASK_STATE_SUSPENDED
TASK_NAME_MAX_LEN
TASK_PRIORITY_DEFAULT
TASK_PRIORITY_MAX
TASK_PRIORITY_MIN
TASK_STACK_DEPTH_DEFAULT
TASK_STACK_DEPTH_MIN
TIMEOUT_MAX

Functions§

delay
Delays a task for a given number of milliseconds.
micros
Gets the number of microseconds since PROS initialized,
millis
Gets the number of milliseconds since PROS initialized.
mutex_create
Creates a mutex.
mutex_delete
Deletes a mutex
mutex_give
Deletes a mutex
mutex_take
Takes and locks a mutex, waiting for up to a certain number of milliseconds before timing out.
pvTaskGetThreadLocalStoragePointer
Retrieves a value from a task’s thread local storage array.
rtos_resume_all
Resumes the scheduler after it was suspended using a call to vTaskSuspendAll().
rtos_suspend_all
Suspends the scheduler. Suspending the scheduler prevents a context switch from occurring but leaves interrupts enabled. If an interrupt requests a context switch while the scheduler is suspended, then the request is held pending and is performed only when the scheduler is resumed (un-suspended).
task_create
Creates a new task and add it to the list of tasks that are ready to run.
task_delay
Delays a task for a given number of milliseconds.
task_delay_until
Delays a task until a specified time. This function can be used by periodic tasks to ensure a constant execution frequency.
task_delete
Removes a task from the RTOS real time kernel’s management. The task being deleted will be removed from all ready, blocked, suspended and event lists.
task_get_by_name
Gets a task handle from the specified name
task_get_count
Gets the number of tasks the kernel is currently managing, including all ready, blocked, or suspended tasks. A task that has been deleted, but not yet reaped by the idle task will also be included in the count. Tasks recently created may take one context switch to be counted.
task_get_current
Get the currently running task handle. This could be useful if a task wants to tell another task about itself.
task_get_name
Gets the name of the specified task.
task_get_priority
Gets the priority of the specified task.
task_get_state
Gets the state of the specified task.
task_join
Utilizes task notifications to wait until specified task is complete and deleted, then continues to execute the program. Analogous to std::thread::join in C++.
task_notify
Sends a simple notification to task and increments the notification counter.
task_notify_clear
Clears the notification for a task.
task_notify_ext
Sends a notification to a task, optionally performing some action. Will also retrieve the value of the notification in the target task before modifying the notification value.
task_notify_take
Waits for a notification to be nonzero.
task_resume
Resumes the specified task, making it eligible to be scheduled.
task_set_priority
Sets the priority of the specified task.
task_suspend
Suspends the specified task, making it ineligible to be scheduled.
vTaskSetThreadLocalStoragePointer
Sets a value in a task’s thread local storage array.

Type Aliases§

mutex_t
notify_action_e_t
task_fn_t
task_state_e_t
task_t