Sök…


Introduktion

En Looper är en Android-klass som används för att köra en meddelandeslinga för en tråd, som vanligtvis inte har någon kopplad till dem.

Den vanligaste Looper i Android är huvudslingan, även känd som huvudtråden. Den här instansen är unik för en applikation och kan nås statiskt med Looper.getMainLooper() .

Om en Looper är associerad med den aktuella tråden kan den hämtas med Looper.myLooper() .

Skapa en enkel LooperThread

Ett typiskt exempel på implementeringen av en Looper tråd som ges av den officiella dokumentationen använder Looper.prepare() och Looper.loop() och Looper.loop() en Handler till slingan mellan dessa samtal.

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

Kör en slinga med en HandlerThread

En HandlerThread kan användas för att starta en tråd med en Looper . Denna looper kan sedan användas för att skapa en Handler för kommunikation med den.

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
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow