스레드는 정말 산넘어 산이네요...

아래 소스는 간단히 스레드 돌리는 건데요

제 생각엔
스레드 : 0
핸들러 : 0
스레드 :  1
핸들러 : 1
스레드 :  2
핸들러 : 2
스레드 :  3
핸들러 : 3
이렇게 쭉 나올줄 알았는데 순서가 뒤죽박죽 나오네요..

제가 뭔가 잘못 이해한것 같은데...어떻게 해야 위처럼 순서대로 나올까요...

동기화를 이용하면 된다고 하시는데 어떻게 하면 순서대로 나오는지 아래코드 수정좀 부탁드리겠습니다...ㅜ.ㅜ

package com.thread;

import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;

public class Thread_Test extends Activity {
   
 /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
       
        new Thread(new Runnable() {
   
   @Override
   public void run() {
    
    for(int a=0;a<1;a++){
     
     System.out.println("for문 : "+a);
     Message m = Message.obtain(mHandler, a);
     mHandler.sendMessage(m); // 핸들러 호출
     
     
    }
    
    
   }
  }).start();
       
    
    }
    Handler mHandler = new Handler() {
    
       public void handleMessage(Message msg) {
     
        System.out.println("핸들러 : "+msg.what);
      }
   };
}