diff --git a/components/drivers/src/workqueue.c b/components/drivers/src/workqueue.c index 564dde78f29d5d243281512e0642d72b250cb02a..868a0c2bfda2db9e6b40a5870055af0e9a760580 100644 --- a/components/drivers/src/workqueue.c +++ b/components/drivers/src/workqueue.c @@ -278,6 +278,7 @@ rt_err_t rt_workqueue_destroy(struct rt_workqueue *queue) RT_ASSERT(queue != RT_NULL); rt_thread_delete(queue->work_thread); + rt_sem_detach(&(queue->sem)); RT_KERNEL_FREE(queue); return RT_EOK;