Inject a thread pause into infinite loops to allow the idle thread to yield for event processing Removed all preemption usage from the scheduler