This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Priority inheritance with short wait timeout

For how long does a low priority task run at the higher priority when priority inheritance comes into play?

os_mut_wait(0xFFFE); If a high priority task is waiting a long time I would expect the low priority task to run at high priority until the resource is released.

os_mut_wait(mutex, 1); If the high priority task is configured to wait a short time does the low priority task revert to its low priority after that time?

os_mut_wait(mutex, 0); In particular if the timeout is 0, does priority inheritance come into effect at all?

Parents
  • Robert, many thanks for that information - the zero wait explains why my code gets into a deadlock sometimes. The short wait is interesting and probably not what the coder of the high level task would expect - but at least knowing that it can wait an unexpectedly long time allows us to code against it. It would be great if your findings were in the documentation.

Reply
  • Robert, many thanks for that information - the zero wait explains why my code gets into a deadlock sometimes. The short wait is interesting and probably not what the coder of the high level task would expect - but at least knowing that it can wait an unexpectedly long time allows us to code against it. It would be great if your findings were in the documentation.

Children
No data