Поиск…


Вступление

Looper - это класс Android, используемый для запуска цикла сообщений для потока, который, как правило, не связан с ними.

Наиболее распространенным Looper в Android является основной цикл, также известный как основной поток. Этот экземпляр уникален для приложения, и его можно получить статически с помощью Looper.getMainLooper() .

Если Looper связан с текущим потоком, его можно получить с помощью Looper.myLooper() .

Создайте простой LooperThread

Типичный пример реализации потока Looper предоставленного официальной документацией, использует Looper.prepare() и Looper.loop() и связывает Handler с циклом между этими вызовами.

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

Запустить цикл с помощью HandlerThread

HandlerThread можно использовать для запуска потока с помощью Looper . Затем этот петлитель можно использовать для создания Handler для связи с ним.

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
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow