Come mettere in pausa una coda di messaggi di una discussione in Android?

Sto ordinando un gruppo di runnables in un thread tramite un Handler.post (). Vorrei la possibilità di submit una nota a quel thread che wheresse interrompere.

In pausa, voglio dire, finisci il programma o il messaggio che stai lavorando, ma non vai al messaggio successivo o runnable nella coda dei messaggi finché non ti dico di continuare.

  • Come posso convertire una parte del file di origine Java a Kotlin?
  • come abilitare gli events ionici multi-touch
  • Android: Come creare un dialogo senza un titolo?
  • La performance di Fragmenttabhost è lenta?
  • Condividi la window di dialogo Facebook su Android
  • Come modificare la posizione delle voci di menu sulla barra delle azioni
  • I dati di spazzatura trasmessi in connessione TCP WiFi da desktop a Android
  • Differenze tra Jar, Libreria Android e Libreria Android
  • Come registrare una nuova attività in AndroidManifest.xml?
  • Accesso al microfono in SDK Android
  • Passaggio di un object JavaScript utilizzando addJavascriptInterface () su Android
  • Sveglia di Cordova
  • 2 Solutions collect form web for “Come mettere in pausa una coda di messaggi di una discussione in Android?”

    Se qualcun altro trova la sua strada a questa domanda, ho finito con un ThreadPoolExecutor, utilizzando il codice di esempio nella sua documentazione per la creazione di un PausableThreadPoolExecutor: http://download.oracle.com/javase/1.5.0/docs/api /java/util/concurrent/ThreadPoolExecutor.html

    Non utilizza la coda di messaggi o Looper ma compie ciò che stavo cercando di fare, che whereva creare una coda di Runnables che era in grado di essere interrotta e / o annullata. Ha il bonus aggiunto di essere in grado di diffondere la coda su un numero specifico di thread.

    Non esiste un metodo di pausa per il thread implementato in Java, ma è ansible simulare una pausa con un boolean e aspettando che l'ultimo messaggio finisca è qualcosa che potresti fare nel tuo metodo setter del boolean,

    public void run(){ while(!paused && !finised){ // work } } public void setPause(boolean paused){ //wait for your last message if there is one and then this.paused = paused; } 

    e si dovrebbe usare un altro boolean per sapere se il thread è finito, per uscire dal momento.

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.