I want to block a task forever with xQueueReceive(…, … , SomethingLikeWAIT_FOREVER).
Only data posted to the Queue should wake up the task. I do not want to change task priority.
Is there a simpler method as checking the uxQueueMessagesWaiting() and when no data received calling the taskYIELD() ?
When the delay exists because something has been received then the while loop will also exit.
This topic has come up before. It was a design decission not to have a WAIT_FOREVER to keep the RAM usage of the compiler to a minimum and the source code as small as possible.