Timer y TimerTask en Android

Necesito un temporizador para mi programa. Lo he escrito y funciona bien en PC en el programa emulador (Android 1.5 / 2.2). Pero no funciona en el dispositivo real (Android 1.5). ¿Qué estoy haciendo mal

TimerTask task = new TimerTask() {
            public void run() {
                if (condition) {
                    myFunc();
                } else {
                    this.cancel();
                }
            }
        };
        Timer timer = new Timer();
        timer.schedule(task, 500, 85);