So basically if you have an infinite loop in your app's one and only thread, none of the callbacks will happen because they have to run on that one thread?
Yep. Similar to how an infinite loop in the browser will freeze up the page - the browser only gets to control to draw by putting a draw function in the event loop, so if you hog the thread, the page can't update.