vTaskPrioritySet
[任务控制]
task. h
void vTaskPrioritySet( TaskHandle_t xTask,
UBaseType_t uxNewPriority );
INCLUDE_vTaskPrioritySet 必须定义为 1 才能使用此函数。详情请参阅 RTOS 配置文档。
设置任何任务的优先级。
如果正在设置的优先级高于当前执行任务的优先级,则函数返回之前将发生上下文切换。
- 参数:
-
xTask | 正在设置优先级的任务的句柄。空句柄会设置调用任务的优先级。 |
uxNewPriority | 将要设置任务的优先级。 断言优先级低于 configMAX_priority 。如果未定义 configASSERT ,则优先级会被静默限制为 (configMAX_PRIORITIES - 1)。 |
用法示例:
void vAFunction( void )
{
TaskHandle_t xHandle;
// Create a task, storing the handle.
xTaskCreate( vTaskCode, "NAME", STACK_SIZE, NULL, tskIDLE_PRIORITY, &xHandle );
// ...
// Use the handle to raise the priority of the created task.
vTaskPrioritySet( xHandle, tskIDLE_PRIORITY + 1 )
// ...
// Use a NULL handle to raise our priority to the same value.
vTaskPrioritySet( NULL, tskIDLE_PRIORITY + 1 );
}
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.
|