Timer в Android средствами android.os.Handler

Нашел у себя приложение для Android, которое писал около года назад. Выкладываю часть кода с реализацией обновления картинки по таймеру средствами android.os.Handler.

android.os.Handler
-----------------------------------------------------------------
postDelayed(Runnable r, long delayMillis)
Causes the Runnable r to be added to the message queue, to be run after the specified amount of time elapses.
-----------------------------------------------------------------


import android.os.Handler;
...
public class ShowPicture extends Activity implements OnClickListener { 
...
private int refreshTime;           // время обновления в миллисекундах
private ImageView imageView;     // android.widget.ImageView
...
private Runnable slideshow = new Runnable() // реализуем интерфейс Runnable для последующего вызова в postDelayed
    {
        public void run()
        {   
            showPicture(imageView);  // отображение картинки
            handl.postDelayed(this, refreshTime);   // запустить то же самое через refreshTime миллисекунд
        }
    };
   


    public void onClick(View v)
    {
        switch (v.getId()) 

        {
        case R.id.start_button:
            handl.removeCallbacks(slideshow);  // фактически очищаем очередь, в которую помещаем отложенные вызовы методом Handler.postDelayed. Также этот вызов размещается в onStop(), onPause()...
            handl.postDelayed(slideshow, 50);   // при нажатии кнопки Start, через 50 миллисекунд в новом потоке запустится отображение картинки
            break;
        case R.id.stop_button:
            handl.removeCallbacks(slideshow);
            break;
        case R.id.video_exit_button:
            handl.removeCallbacks(slideshow);
            finish();
            break;
         }
    }

}