Ricerca…


introduzione

Un Looper è una classe Android utilizzata per eseguire un loop di messaggi per un thread, che di solito non ne ha uno associato.

Il Looper più comune in Android è il ciclo principale, noto anche come thread principale. Questa istanza è unica per un'applicazione e può essere acceduta staticamente con Looper.getMainLooper() .

Se un Looper è associato al thread corrente, può essere recuperato con Looper.myLooper() .

Crea un semplice LooperThread

Un esempio tipico dell'implementazione di un thread Looper fornito dalla documentazione ufficiale utilizza Looper.prepare() e Looper.loop() e associa un Handler con il loop tra queste chiamate.

class LooperThread extends Thread {
    public Handler mHandler;

    public void run() {
        Looper.prepare();

        mHandler = new Handler() {
            public void handleMessage(Message msg) {
                // process incoming messages here
            }
        };

        Looper.loop();
    }
}

Esegui un ciclo con un HandlerThread

Un HandlerThread può essere utilizzato per avviare un thread con un Looper . Questo looper può quindi essere utilizzato per creare un Handler per le comunicazioni con esso.

HandlerThread thread = new HandlerThread("thread-name");
thread.start();
Handler handler = new Handler(thread.getLooper());


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow