This commit is contained in:
刘可亮
2024-10-30 16:50:31 +08:00
parent 0ef85b55da
commit 661e71562d
458 changed files with 46555 additions and 12133 deletions

View File

@@ -134,8 +134,6 @@ void rt_wqueue_wakeup_all(rt_wqueue_t *queue, void *key)
queue_list = &(queue->waiting_list);
level = rt_hw_interrupt_disable();
/* set wakeup flag in the queue */
queue->flag = RT_WQ_FLAG_WAKEUP;
if (!(rt_list_isempty(queue_list)))
{
@@ -159,6 +157,8 @@ void rt_wqueue_wakeup_all(rt_wqueue_t *queue, void *key)
LOG_D("%s: Thread resume failed", __func__);
}
node = node->next;
rt_wqueue_remove(entry);
}
else
{
@@ -211,12 +211,6 @@ int rt_wqueue_wait(rt_wqueue_t *queue, int condition, int msec)
/* reset thread error */
tid->error = RT_EOK;
if (queue->flag == RT_WQ_FLAG_WAKEUP)
{
/* already wakeup */
goto __exit_wakeup;
}
rt_wqueue_add(queue, &__wait);
rt_thread_suspend(tid);
@@ -233,13 +227,5 @@ int rt_wqueue_wait(rt_wqueue_t *queue, int condition, int msec)
rt_schedule();
level = rt_hw_interrupt_disable();
__exit_wakeup:
queue->flag = RT_WQ_FLAG_CLEAN;
rt_hw_interrupt_enable(level);
rt_wqueue_remove(&__wait);
return tid->error;
}