Почему run () вызывается только один раз ?

Рассмотрим этот класс, AnimationThread :

class AnimationThread implements Runnable {
    public void pause() {
        doAnimation = false;
    }

    public void doStart(){
        doAnimation = true;
    }

    @Override
    public void run() {
        // TODO Auto-generated method stub
        if (doAnimation) {
            //my code
        }

        try {
            Thread.sleep(500);
        } 
        catch (InterruptedException e) {

        }
    }
}

Теперь я запускаю этот поток в onCreate действия (просто показывает примерный код):

AnimationThread animRunnable = new AnimationThread();
animationThread = new Thread(animRunnable);
animationThread.start();

Но run () вызывается только один раз (я проследил журнал, чтобы подтвердить это). Я просто хочу знать, когда я запускал поток, почему run () не вызывается повторно с 500 спящими. Он просто вызывается один раз.

5
задан Peter Mortensen 18 November 2011 в 05:16
поделиться