Android - Unterbrechen aller Threads dauerte: * ms

9

Ich habe diese Warnungen in meinem Logcat auch nach einer Weile, dass ich die Anwendung verlassen habe. (Hat aber nicht getötet, nur zurückgedrückt, um es zu verlassen.)

%Vor%

Diese Zahlen sind ernst und viel.

Ich sah einige Fragen zu diesem Thema, und keines davon war ähnlich wie meines, und ich kann nicht akzeptieren, dass "es ignoriert, es sei denn, Sie haben kein OOM oder ein Einfrieren Problem", wenn dies verursachen kann, kann ich nicht warten, bis es passiert mach etwas dagegen.

Ich muss nur wissen, was das verursacht und wie ich das verhindern kann.

Ich verwende Retrofit, um meine Webservice-Anfrage zu erledigen. Und ein ThreadPoolExecutor zum Abrufen / Aktualisieren / Löschen von Daten aus dem Cache, während auf die Beendigung der Anfrage gewartet wird. Ich glaube aber nicht, dass das irgendetwas bewirkt.

Irgendwelche Ideen oder allgemeine Informationen über diese Situation werden geschätzt, weil ich nichts spezifisch über diese "Aussetzung aller Fäden" Warnung finde.

    
yahya 03.05.2016, 11:13
quelle

2 Antworten

3

Sieht so aus, als ob in Ihrem Prozess ein Thread läuft, der temporäre Objekte zuweist, die ART auf Müll sammeln muss, und alle Threads aussetzt, um das zu tun.

Versuchen Sie zu verfolgen, was noch im Hintergrund laufen könnte, selbst nachdem Sie die App verlassen haben. Sie können auch versuchen, den "Allocation Tracker" in Android Studio zu verwenden, um herauszufinden, welches Objekt zugewiesen wird - vielleicht werden Sie dadurch den verirrten Thread verfolgen.

    
Marcin Koziński 04.06.2016 22:25
quelle
-1

Das passiert, wenn ich das Retrofit-Antwortobjekt auf RealmObject ausweite. Ich entferne RealmObject zur Nachrüstung. Es funktioniert für mich.

    
Kumar Punjab 24.08.2016 09:58
quelle