title: What's the android preferable way of spawning a new thread?
body: <p>Coming from the basic Java world I know there's a way to spawn a thread by creating a new Runnable and passing it to a new Thread and calling start on it. Something like:</p>
  
  <pre><code>Runnable r = new Runnable() {
     @Override
     public void run(){
     }
  }
  
  new Thread( r ).start()
  </code></pre>
  
  <p>Now joining the Android world it seems the Android eco system provides a few other ways to spawn a thread. One of them is Activity.runOnUiThread (for having stuff done on the UI) and Handler.post( runnable ). </p>
  
  <p>What I am wondering about is what's the Android preferable way of spawning a new thread. I do see a lot cases such as:</p>
  
  <pre><code>Handler handler = new Handler()
  handler.post( r )
  </code></pre>
  
  <p>Is there a good reason to use Handler to spawn a thread as opposed to creating a new Thread old way?</p>
  
  <p>Thanks.
  Yev</p>