UBYTE OSTaskCreate(void (*task)(void *pd),
void *pdata,
OS_STK *pstk,
INT8U prio);
void (*task)(void *pd);
INT8U OSTaskCreateExt(void(*task)(void *p_arg),
void *p_arg, OS_STK *ptos,
INT8U prio,
INT16U id,
OS_STK *pbos,
INT32U stk_size,
void *pext,
INT16U opt);
INT8U OSTaskDel(INT8U prio);
INT8U OSTaskDelReq(INT8U prio);
void requestor() {
while(1) {
if (deleteTask == TRUE) {
while(OSTaskDelReq(prio) != OS_TASK_NOT_EXIST) {
OSTimeDly(1);
}
}
}
void task(void *pdata) {
while(1) {
if (OSTaskDelReq(OS_PRIO_SELF) == OS_TASK_DEL_REQ) {
OSTaskDel(OS_PRIO_SELF);
}
}
}
INT8U OSTaskChangePrio(INT8U oldprio, INT8U newprio);
INT8U OSTaskSuspend(INT8U prio);
INT8U OSTaskResume(INT8U prio);
INT8U OSTaskStkChk(INT8U prio, OS_STK_DATA *p_stk_data);
void OSTaskNameSet(INT8U prio, INT8U *pname, INT8U *perr);
INT8U OSTaskNameGet(INT8U prio, INT8U *pname, INT8U *perr);
INT8U OSTaskQuery(INT8U prio, OS_TCB *p_task_data);