Eager Evaluation Considered Harmful
In real-time systems potentially unbounded loops and lazy (late) evaluation are often avoided in order to improve predictability. This paper will show that a commonly suggested way to implement semaphores can lead to unnecessary blocking of high-priority tasks. It also presents a scheme with lazy evaluation and (potentially) unbounded loops that gives less blocking of high-priority tasks.