2012-02-06 15 views
5

Se il gestore è stato istanziato nel thread principale dell'interfaccia utente, un post con un Runnable crea un thread secondario che viene aggiunto alla coda dei messaggi o viene semplicemente eseguito nel thread dell'interfaccia utente?handler.post (eseguibile) avvia una nuova discussione?

handler.post(new Runnable(){ 
    public void run() { 
     // do stuff 
    } 
}); 

risposta

11

No, non crea una nuova discussione. Si esegue semplicemente il vostro eseguibile sul thread vostro gestore è collegata, che in questo caso significa che il thread UI

+0

Grazie Waqas. – xil3

0
handler.post(new Runnable()){ 

public void run(){ 
//do something 
} 
}); 

questo non garantisce che creerà una nuova thread.it sarà solo chiamare il eseguibile del filo in cui è collegato il gestore (filo dell'interfaccia utente qui).

Il gestore non crea un nuovo thread, si lega al looper del thread in cui è stato creato (il thread principale in questo caso) o a un looper che gli viene fornito durante la costruzione.

Problemi correlati