async task zu lange dauert, die Arbeit zu tun
Brauche ich einen Befehl senden vom Gerät und progressdialog
soll den Fortschritt anzeigen, bis der Befehl beendet ist.Für diesen Zweck verwende ich asynctask
in meiner Anwendung.
Aber es nimmt viel Zeit bis zum Ende des Befehls.
So, gibt es eine Möglichkeit, um die Priorität festzulegen, der asynctask auf maximum?
Jeder Vorschlag wird geschätzt.
Vielen Dank im Voraus
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gut können Sie versuchen, diese:
setPriority
wird keine Wirkung haben.Könnte man auch definieren Sie Ihre eigenen benutzerdefinierten timeout, falls Sie nicht möchten, dass der Benutzer warten auf eine Antwort vom webservice Vergangenheit bestimmte Zeit.
Derzeit Android verwendet die hintergrund-thread cgroup für alle threads mit Priorität
THREAD_PRIORITY_BACKGROUND
oder noch schlimmer, undTHREAD_PRIORITY_BACKGROUND
ist 10, währendTHREAD_PRIORITY_DEFAULT
ist 0 undTHREAD_PRIORITY_FOREGROUND
ist -2.Wenn Sie gehen für
THREAD_PRIORITY_BACKGROUND + THREAD_PRIORITY_MORE_FAVORABLE
(aka 9) dein thread wird aufgehoben, aus dem hintergrund cgroup mit der 10% Beschränkung, aber nicht wichtig genug zu unterbrechen, User Interface threads zu oft.aber bewusst sein, dass die zugrunde liegende Implementierung kann die Wiederverwendung der gleichen Thread-Objekt für die verschiedenen Aufgaben, für die nächsten AsyncTask, oder was auch immer. Es scheint, dass Android einfach setzt die Priorität nach doInBackground() zurückgibt, obwohl.
.