vTaskDelayUntil() not preemting lower priority task

sjasz wrote on Tuesday, April 30, 2019:

I call vTaskDelayUntil() in a task at priority 2. I have another task at priority 4 (writing to a display). When vTaskDelayUntil() expires I am expecting the priority 2 task to preempt the priority 4 task, which it is not. Is my understanding of vTaskDelayUntil() correct? Should the priority 2 task preemt the priority 4 task?


rtel wrote on Tuesday, April 30, 2019:

The higher the numeric priority value the higher the priority (logical)

  • hence priority 2 is lower than priority 4 and it sounds like the
    behaviour you observe is the expected behaviour.

sjasz wrote on Thursday, May 02, 2019:

Thanks for your response. I assumed lower number would be higher priority based on interrupt controllers I have used. Interesting that the code I inherited has set writing to the display as the highest priority task. I will change the priority scheme and check the behavior with this new knowledge. No need to respond further.