paths are paved nicely for you and don't require working with the run loop directly.</p>
<p>The most common case for using the run loop is integrating with a non-Ember API
that includes some sort of asynchronous callback.
For example:</p>
<ul>
<li>DOM update and event callbacks</li>
<li><code>setTimeout</code> and <code>setInterval</code> callbacks</li>
<li><code>postMessage</code> and <code>messageChannel</code> event handlers</li>
<li>AJAX callbacks</li>
<li>Websocket callbacks</li>
</ul>
<h2 id="toc_why-