title: Android Handler.handleMessage() won't get called
body: <p>I'm trying to understand this version of <code>Message.obtain()</code>
  <a href="http://developer.android.com/reference/android/os/Message.html#obtain%28android.os.Handler,%20java.lang.Runnable%29" rel="nofollow">http://developer.android.com/reference/android/os/Message.html#obtain%28android.os.Handler,%20java.lang.Runnable%29</a></p>
  
  <p>The Runnable passed to Message.obtain() is called for sure,
  but the Handler.handleMessage() defined is not called (on msg.sendToTarget() or even mHandler.sendMessage(msg))</p>
  
  <pre><code>Handler mHandler;
  
  class MyThread implements Runnable {
  
    @Override
    public void run() {
      Message msg = Message.obtain(mHandler, new Runnable() {
          @Override
          public void run() {
              System.out.println("This is printed for sure"); // This is printed for sure
          }
      });
  
      msg.obj = "My message!";
  
      msg.sendToTarget();
    }
  }
  
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
  
    mHandler = new Handler() {
        @Override
        public void handleMessage(Message msg) {
            System.out.println(msg.obj); // This is never printed
        }
    };
  
    Thread t = new Thread(new MyThread());
    t.start();
  }
  </code></pre>