2010-05-03 27 views
7

iPhone'daki CPU'nun uygulama önceliğini artırmanın bir yolu var mı? SpringBoard'un cihazda performansta biraz dalgalanmalara neden olan zamanlarda çok fazla CPU aldığını fark ettim.tramplen çok fazla CPU alır

cevap

11

Gördüğünüz şey muhtemelen Core Animation ile ilgili bir eserdir. IPhone'daki Core Animation sunucusu, Springboard'a aittir, pek çok Core-Animation ile ilgili eylemler (animasyonla ilgili hesaplamalar vb.), Uygulamanız tarafından başlatılmış olsalar bile Springboard tarafından gerçekleştirilir. Bu, Springboard'un arka planda CPU zamanını yakmadığı bir durum değildir, bu işlemlerin bir kısmı, cihaza karşı Cihaz veya benzeri aletler çalıştırırken nasıl görünür.

Bu durumda, performans sorunlarınızı düzeltmek için, ekranın etrafındaki şeyleri (hatta UIKit arabirim öğelerini bile kullanarak) nasıl hareket ettiğinizi veya bu görünümlerin veya katmanların nasıl birleştirildiğini incelerim.

+0

teşekkürler .. oraya bakacak. O zaman UI animasyonunu OpenGL görünümüne çevirerek daha iyi bir performans elde edersem merak ediyorum. Hmmm ... Merak ediyorum. – tbarbe

+0

@tbarbe - Performansınızı düşürmeye katkıda bulunacak herhangi bir açık nokta olup olmadığını görmek için öncelikle uygulamanızı Shark ve Instruments kullanarak izlemeyi denerdim. OpenGL ES'ye gitmek, basit bir animasyon için bile muazzam miktarda kod ekleyecektir ve yine de bunu, diğer UI öğelerinizin üstünde bulunan opak olmayan bir CAEAGLLayer içinde gerçekleştirmeniz gerekecektir. –

+0

thx Brad ... daha fazla bakacak - tavsiye için teşekkürler! Ayrıca avantaj ve dezavantajların ne olduğunu görmek için HeadGir'e dalış yapmak için mazeretler arıyorum. :) – tbarbe