skreyer wrote on Wednesday, May 29, 2019:
Hi,
Ive got the following setup:
taskA with prioritytskIDLE_PRIORITY + 1
taskB with priority tskIDLE_PRIORITY + 2
taskB enters a sync point by a call to xSemaphoreTake. On the occurence of some event at a later point in time taskA releases taskB by calling xSemaphoreGive. The release does work perfectly, taskB gets woken up and is executed immediatly and then goes to sleep again using vTaskDelayUntil. However for some reason taskA who called xSemaphoreGive does not return anymore, only at some later point, (after taskB was running around 1060 times- it is a cyclic task using vTaskDelayUntil for sleep).
Is this an explainable behaviour? If yes what do I need to do in order to get taskA returning from xSemaphoreTake after taskB first enters vTaskDelayUntil function?
If you need more info let me know.
Any input on this issue is very much appreciated.
Thanks in advance,
Steve