Frage

Was sind die besten Praktiken, Tricks und Anleitungen für die Verwendung von XCode Performance-Tools wie der Leak-Monitor und der CPU-Sampler, für jemanden zu debuggen versuchen und verbessern die Leistung einer iPhone-Applikation? Dank!

War es hilfreich?

Lösung

Es hängt ganz von der Anwendung und auf das, was Sie zu tun versuchen. Versuchen Sie, die gesamte Anwendung zu optimieren oder sind Sie konzentriert sich auf einen bestimmten Problembereich? Versuchen Sie, die Speichernutzung zu reduzieren, die CPU-Auslastung zu verringern und / oder machen die App mehr ansprechbar?

Bevor Sie die Performance-Analyse zu starten, verwenden Sie den statischen Analysator Ihren Code zu analysieren. Es wird oft Speichermanagementprobleme finden, die zu Undichtigkeiten führen würden, die Ihre Anwendung verursachen würde, um möglicherweise auf dem Gerät zum Absturz bringen.

Sobald alle der Analysator identifizierten Probleme behoben wurden, ist der beste Ansatz ist durch die Identifizierung wahrgenommen Performance-Probleme zu starten. Das heißt, Fokus auf Performance-Probleme, dass der Benutzer bemerken würde. Dann werden die, analysieren. Wenn Sie mit ihm weg erhalten können, tun die Analyse auf der App im Simulator laufen als die Durchlaufzeit schneller ist.

Wenn das Problem ein aufblasen ist, verwenden Sie Object Alloc und Leaks, um herauszufinden, warum.

Wenn es sich um einen von laggy / träges Verhalten, verwenden Sie die CPU-Tools, um herauszufinden, wo die Zyklen werden. Beachten Sie aber, dass träge Verhalten kann nicht , weil der CPU-Auslastung, aber können sein, da die Hauptereignisschleife durch etwas blockiert ist, höchstwahrscheinlich falsche Parallelität Muster. In diesem Fall finden Sie alle Proben auf dem Haupt-Thread in einer Art einer Sperre oder Wartefunktion sehen.

Darüber hinaus, müssen Sie bestimmte Szenarien identifizieren, konkrete Antworten zu erhalten.

Andere Tipps

Verwendung Instrumente in diesem Einsatz Objektzuordnung Aktivitätsmonitor, Lecks memoer Monitor

und Test App

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top