Cómo ejecutar un hilo repetidamente después de algún intervalo

Quiero ejecutar un subproceso (lo que conlleva una tarea que consume mucho tiempo en segundo plano y NO actualiza la interfaz de usuario), simplemente descarga algunos archivos de Internet y es independiente de la interfaz de usuario.

Quiero ejecutar este hilo repetidamente después de algún intervalo de tiempo.

¿Cómo puedo hacer esto, tengo un hilo como el siguiente:

boolean mResult =false;

void onCreate()
{
    DownloadThread mDownloadThread = new DownloadThread();
    mDownloadThread.start();
}

class DownloadThread extends Thread implements Runnable
{
    public void run() 
    {
       // My download code 
       mResult  = result;
    }
}

Necesito usarHandler para implementar esto?

Respuestas a la pregunta(3)

Su respuesta a la pregunta