add countdownlatch and completion

This commit is contained in:
SheldonDai
2019-10-10 14:15:25 +08:00
parent b6af64f40d
commit 04694f6013
15 changed files with 688 additions and 31 deletions

View File

@@ -39,7 +39,7 @@ __STATIC__ void pend_list_add(k_task_t *task, pend_obj_t *pend_obj)
task_state_set_pend(task);
}
__KERNEL__ k_prio_t pend_highest_prio_get(pend_obj_t *object)
__KERNEL__ k_prio_t pend_highest_pending_prio_get(pend_obj_t *object)
{
k_task_t *task;
@@ -48,6 +48,11 @@ __KERNEL__ k_prio_t pend_highest_prio_get(pend_obj_t *object)
return task ? task->prio : K_TASK_PRIO_INVALID;
}
__KERNEL__ k_task_t *pend_highest_pending_task_get(pend_obj_t *object)
{
return TOS_LIST_FIRST_ENTRY(&object->list, k_task_t, pend_list);
}
__KERNEL__ void pend_list_remove(k_task_t *task)
{
tos_list_del(&task->pend_list);