* @brief Destroy a work queue. * * @param queue is a pointer to the workqueue object. * * @return RT_EOK Success. */
| 252 | * @return RT_EOK Success. |
| 253 | */ |
| 254 | rt_err_t rt_workqueue_destroy(struct rt_workqueue *queue) |
| 255 | { |
| 256 | RT_ASSERT(queue != RT_NULL); |
| 257 | |
| 258 | rt_workqueue_cancel_all_work(queue); |
| 259 | rt_thread_delete(queue->work_thread); |
| 260 | rt_sem_detach(&(queue->sem)); |
| 261 | RT_KERNEL_FREE(queue); |
| 262 | |
| 263 | return RT_EOK; |
| 264 | } |
| 265 | |
| 266 | /** |
| 267 | * @brief Submit a work item to the work queue without delay. |
no test coverage detected