/** * @brief Dequeues and wakes up all threads from the threads queue object. * * @param[in] tqp pointer to the threads queue object * @param[in] msg the message code * * @iclass */ void chThdDequeueAllI(threads_queue_t *tqp, msg_t msg) { while (queue_notempty(tqp)) { chThdDoDequeueNextI(tqp, msg); } }
/** * @brief Dequeues and wakes up one thread from the threads queue object, * if any. * * @param[in] tqp pointer to the threads queue object * @param[in] msg the message code * * @iclass */ void chThdDequeueNextI(threads_queue_t *tqp, msg_t msg) { if (queue_notempty(tqp)) chThdDoDequeueNextI(tqp, msg); }