Auswirkungen von 'instanceof' in Android Java-Code

9

Hat das instanceof -Schlüsselwort einen relativ stärkeren Einfluss auf die Android-Plattform (und spezifischer auf die Mobiltelefone, auf denen die Dalvik-VM läuft?).

    
Michiel 13.02.2010, 23:10
quelle

2 Antworten

3

Ich denke nicht, dass instanceof eine stärkere Auswirkung auf die Dalvik VM hat, die der JVM entgegengesetzt ist.

Wenn Sie Zweifel haben, können Sie selbst sehen, wenn Sie Ihre Anwendung mit einem Tool namens Allocation Tracker ausführen, das standardmäßig als Werkzeug für die DDMS verwendet wird.

    
Anthony Forloney 13.02.2010, 23:17
quelle
1

Ich fand, dass instanceof meistens schneller ist (etwa 60-85% der Zeit). Dieser Prozentsatz fällt jedoch ab, wenn das Telefon mit Hintergrundaktivität (z. B. GC, Berühren, Tasten, Schütteln usw.) konfrontiert wird, aber instanceof über 50% der Zeit schneller bleibt. Wenn die Anzahl der Zyklen sehr groß ist (d. H. & Gt; 1000000), ist die Anzahl der Zyklen fast immer schneller. Die Reihenfolge, in der die beiden while-Schleifen dargestellt werden (d. H. Zuerst die instanceof-Schleife und dann die Feldüberprüfungsschleife), beeinflusst die Ergebnisse, aber instanceof bleibt am schnellsten.

%Vor%     
Michiel 14.02.2010 01:35
quelle