Frage


Gibt es einen schnellen Weg, um die Leistung / Laufzeit eines bestimmten Code-Teils in dem neuen Xcode 6-Spielplatz zu bewerten?Kummer Ich möchte, dass ich Swift lernt, indem ich verschiedene Codierungsstile für bestimmte Lösungen und ihre Auswirkungen auf die Code-Leistung vergleichen.

War es hilfreich?

Lösung

Wir entmutigen dringend mit Spielplätzen, die Leistung zu messen, zumindest die Zeit mit der Zeit mit der Leistung zu verwenden.Die Mehrheit der Zeit, die während eines Spielplatzes aufgenommen wurde, ist die Protokollierung der Ergebnisse in der Seitenleiste;Die eigentliche Zeit, die Ihr Code nimmt, beitragen nicht so viel.Die Laufzeit Ihres Codes auf einem Spielplatz hängt also hauptsächlich davon ab, wie viele Codezeilen ausgeführt werden / Ergebnisse angemeldet sind.

Wenn Sie Performance-Messungen durchführen möchten, überprüfen Sie den Xktest-Framework.Sie können ein Testbündel für Ihren Swift-Code erstellen.

Eine Sache, die Sie in einem Spielplatz messen können, ist die Anzahl, wie oft Ihre Codezeilen ausgeführt werden.Wenn Sie beispielsweise versuchen, die algorithmische Komplexität eines gewissen Codes zu messen, können Sie dies basierend auf, wie oft es, wie oft es Zeilen des Codes an z.Füllen Sie eine Sortierung aus, oder was auch immer Sie versuchen, zu tun.Codezeilen, die mehr als einmal ausgeführt werden, werden die Anzahl der Male angezeigt, in denen sie in der Ergebnisseitenleiste ausgeführt werden.

Andere Tipps

Ich habe dieses kleine Werkzeug gebaut, mit dem Sie auf Ihrem Spielplatz Leistungstests haben können.

Ich werde es weiter aktualisieren und verbessern, aber für jetzt gibt es die grundlegende Fähigkeit, zu messen, wie lange eine Funktion zum Ausführen nimmt.

https://github.com/sebastienpeek/swift-performance

Ich habe eine (möglicherweise nicht so elegante) Lösung gefunden:

generasacodicetagpre.


Die Variable 'dur' gibt Ihnen die Zecken Ihren Code, der zum Ausführen benötigt wird.

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