When a process inside a monitor with Mesa semantics finishes, another process can acquire the monitor. Now there can be starvation here when there is a thread with a lower priority.

Are there monitors of Mesa-semantics type that don't cause starvation and thus have bounded waiting?

  • 1
    $\begingroup$ I don't think that priority and bounded waiting mix particularly well in any circumstance (monitors, mutual exclusion, even in lock-free synchronization). I can't think of any circumstance under which allowing low-priority processes to proceed while there are higher-priority processes waiting wouldn't be a priority inversion. I can't figure out how to make the term starvation be meaningful in any circumstance other than threads of equal priority. $\endgroup$ – Wandering Logic Oct 4 '14 at 18:32
  • $\begingroup$ @WanderingLogic Well, it now sounds logical for threads with lower priorities to not have bounded waiting, now that you mentioned it. I guessed it right, you've been a professor. :-) $\endgroup$ – Tamad Lang Oct 5 '14 at 14:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.