2010-05-03 7 views
7

Gibt es eine Möglichkeit, die Anwendungspriorität für die CPU auf dem iPhone zu erhöhen? Ich stelle fest, dass SpringBoard manchmal zu viel CPU verbraucht, was zu Leistungsschwankungen auf dem Gerät führt.Sprungbrett braucht zu viel CPU

Antwort

11

Was Sie sehen, ist wahrscheinlich ein Artefakt im Zusammenhang mit Core Animation. Der Core-Animationsserver auf dem iPhone gehört Springboard, so dass viele Aktionen im Zusammenhang mit Core-Animation (Berechnungen im Zusammenhang mit Animationen usw.) von Springboard ausgeführt werden, obwohl sie von Ihrer Anwendung initiiert wurden. Dies ist nicht der Fall, wenn Springboard selbst CPU-Zeit im Hintergrund verbrennt. Es ist nur so, wie ein Teil dieser Verarbeitung aussieht, wenn Instrumente oder ähnliche Werkzeuge gegen das Gerät laufen.

In diesem Fall würde ich sehen, wie Sie Dinge auf dem Bildschirm animieren (sogar implizit mithilfe der UIKit-Oberflächenelemente) oder wie diese Ansichten oder Ebenen zusammengesetzt wurden, um Ihre Leistungsprobleme zu glätten.

+0

danke .. wird dort aussehen. :) Ich frage mich dann, ob ich eine bessere Leistung durch Übersetzung dieser UI-Animation in eine OpenGL-Ansicht erhalten würde. Hmmm ... ich frage mich. – tbarbe

+0

@tbarbe - Ich würde zuerst versuchen, Ihre Anwendung mit Shark und Instruments zu profilieren, um festzustellen, ob es offensichtliche Hotspots gibt, die zur Leistungsverschlechterung beitragen. Wenn Sie zu OpenGL ES wechseln, wird eine enorme Menge an Code für eine einfache Animation hinzugefügt, und Sie müssen dies immer noch in einem CAEAGLLayer tun, der nicht überblickbar ist und über Ihren anderen UI-Elementen liegt. –

+0

thx Brad ... werde mehr hineinschauen - danke für den Hinweis! Ich suche auch nach Ausreden, um kopfüber in OpenGL zu tauchen, um zu sehen, was die Vor- und Nachteile wirklich sind. :) – tbarbe

Verwandte Themen