A task waits on a queue. When some other task adds to the queue the item in the queue is processed, and during that processing it starts a sequence of the SPI operations which are driven by interrupts and does a wait for notification. When the SPI sequence completes it does a notification and the task completes the processing of the item that was queued. If another item is added to the queue during the wait for notification will the wait for notification exit?
No. If a task is waiting for. a specific sort of signal, only that type of signal will wake it up.
Adding an item to a queue can only wake a task that is currently waiting on that queue, as queues have no idea which task is the one “assigned” to read from them, unless that task is currently waiting to read from it.
The only operations that are tied to a task that isn’t currently blocked/suspended on the object, are the direct-to-task notifications, in part, because the “object” the operation is based on IS the task.
richard-damon,
Thanks for the response. What I have should work.
deh
deh