différence entre Thread et Handler

Quelqu'un peut-il me dire la déférence entre le Fil et le Gestionnaire? Lorsque nous utilisons Fil et lorsque nous utilisons Gestionnaire?

J'ai deux code dans mon projet , Mais je ne peux pas les comprendre.

final Handler handler =  new Handler()
{
    @Override
    public void handleMessage(Message msg)
    {
        // Do SomeThings
    } 
};

Et

private class readThread extends Thread
{
    Handler mHandler;

    readThread(Handler h){
        mHandler = h;
        this.setPriority(Thread.MIN_PRIORITY);

    }

    @Override
    public void run()
    {
        // Do SomeThings
    }
}

Et dans une autre méthode de l'appel du gestionnaire comme ce

read_thread = new readThread(handler);
            read_thread.start();

Laquelle on exécute d'abord?? Quelqu'un peut-il m'expliquer?

source d'informationauteur Khodayar