任务管理

Pursue

任务创建与删除

任务创建

1
2
3
4
5
6
7
8
9
10
11
12
13
void OSTaskCreate((OS_TCB *)      p_tcb,
(CPU_CHAR*) p_name,
(OS_TASK_PTR) p_task,
(void*) p_arg,
(OS_PRIO) prio,
(CPU_STK*) p_stk_base,
(CPU_STK_SIZE) stk_limit,
(CPU_STK_SIZE) stk_size,
(OS_MSG_QTY) q_size,
(OS_TICK) time_quanta,
(void*) p_ext,
(OS_OPT) opt,
(OS_ERR*) p_err);

任务删除

1
2
void  OSTaskDel (OS_TCB  *p_tcb,	/* 任务控制快 */
OS_ERR *p_err) /* 错误代码 */

任务挂起和恢复

注意:

  1. 禁止在中断中调用。任务挂起可恢复;任务删除不可恢复,需重新创建,在创建时会初始化任务堆栈。
  2. 可嵌套。

任务挂起

1
2
void  OSTaskSuspend (OS_TCB  *p_tcb,	/* 任务控制快 */
OS_ERR *p_err) /* 错误代码 */

任务恢复

1
2
void  OSTaskResume (OS_TCB  *p_tcb,	/* 任务控制快 */
OS_ERR *p_err) /* 错误代码 */
评论