Buscar..


Introducción

Un Looper es una clase de Android que se utiliza para ejecutar un bucle de mensajes para un hilo, que generalmente no tiene uno asociado con ellos.

El Looper más común en Android es el bucle principal, también conocido comúnmente como el hilo principal. Esta instancia es única para una aplicación y se puede acceder de forma estática con Looper.getMainLooper() .

Si un Looper está asociado con el subproceso actual, se puede recuperar con Looper.myLooper() .

Crear un LooperThread simple

Un ejemplo típico de la implementación de un subproceso Looper proporcionado por la documentación oficial utiliza Looper.prepare() y Looper.loop() y asocia un Handler con el bucle entre estas llamadas.

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();
    }
}

Ejecutar un bucle con un HandlerThread

Se puede utilizar un HandlerThread para iniciar un hilo con un Looper . Este looper se puede usar para crear un Handler para las comunicaciones con él.

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
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow