differenz zwischen thread / runable, handler, runonuithread, asynctask

Ich habe angefangen, Android-Programmierung zu lernen und arbeite an einem kleinen Spiel. Ich hörte, dass das Ausführen von Hintergrundoperationen oder Updates oder das Herunterladen oder was auch immer Hintergrund und zeitraubende Dinge nicht mit dem UI-Thread erfolgen sollten und stattdessen thread / runnable oder asynctask verwenden sollten. Aber ich kann nicht einige Dinge in Threads wie Hintergrund-Konnektivität zur Datenbank tun, wo, wie diese Konnektivität mit dem verbleibenden Handler, runonuithread, asynctask.am funktioniert, stark verwirrt, wo welche zu verwenden ist. Ich habe einige Fragen 1.handler, runonuithread sind beide Läufe auf dem UI-Thread, thread / runnable ist ein anderer Thread und in der asynchronen Task, doinbackground-Methode läuft auf verschiedenen Threads und andere Methoden wie onprogressupdate, onpreexecute und onpostexecute laufen auf dem UI-Thread. richtig? wenn das so ist, habe ich ein Programm geschrieben, um Datenbankkonnektivität mit thread / runnable zu machen, es hat nicht funktioniert, aber als ich es in doinbackground schrieb, hat es funktioniert. Meine Verwirrung ist, dass beide Methoden auf unterschiedlichen Threads ausgeführt werden, warum dies geschieht. 2. Was ist der Hauptunterschied zwischen diesen 4 und wo sind sie anwendbar und nicht anwendbar. Und möchte auch wissen, welche Aufgaben nur ein UI-Thread ausführen kann. danke in adv:)

Antworten auf die Frage(2)

Ihre Antwort auf die Frage