Uygulama kare hızı

Genelde, daha iyi performans için, mümkün olan en düşük kare hızını kullanın.

Uygulamanın kare hızı, Çalışma zamanı kodunu çalıştırmanın temelleri bölümünde belirtildiği şekilde, her “uygulama kodu ve oluşturma” döngüsü için ne kadar süre gerektiğini belirler. Daha yüksek kare hızı daha sorunsuz bir animasyon oluşturur. Ancak, animasyon veya diğer görsel değişiklikler gerçekleşmediğinde, genellikle yüksek kare hızı kullanmak için bir neden yoktur. Daha yüksek bir kare hızı, düşük hızla karşılaştırıldığında daha fazla işlemci döngüsü ve pil enerjisi harcar.

Aşağıda, uygulamanız için uygun bir varsayılan kare hızının ayarlanmasına ilişkin bazı genel kılavuzlar mevcuttur:

  • Flex çerçevesi kullanıyorsanız, başlangıç kare hızını varsayılan değerde bırakın..

  • Uygulamanız animasyon içeriyorsa, uygun kare hızı en az saniyede 20 karedir. 30 kareden fazla olan herhangi bir hız genellikle gereksizdir.

  • Uygulamanız animasyon içermiyorsa, saniyede 12 karelik bir hız büyük olasılıkla yeterlidir.

“Olabilecek en düşük kare hızı” uygulamanın o andaki etkinliğine bağlı olarak değişebilir. Daha fazla bilgi için, bir sonraki ipucu olan “Uygulamanızın kare hızını dinamik olarak değiştirme” bölümünü inceleyin.

Uygulamanızdaki tek dinamik içerik video olduğunda düşük bir kare hızı kullanın.

Çalışma zamanı, uygulamanın kare hızı ne olursa olsun, yüklenen video içeriğini yerel kare hızında oynatır. Uygulamanız bir animasyon veya hızla değişen görsel içerik içermiyorsa, düşük bir kare hızının kullanılması kullanıcı arabiriminin deneyimini bozmaz.

Uygulamanızın kare hızını dinamik olarak değiştirme.

Uygulamanın ilk kare hızını proje veya derleyici ayarlarında tanımlarsınız ancak kare hızı o değerde sabitlenmez. Kare hızını Stage.frameRate özelliğini (veya Flex’teki WindowedApplication.frameRate özelliği) ayarlayarak değiştirebilirsiniz.

Kare hızını uygulamanızın geçerli gereksinimlerine göre değiştirin. Örneğin, uygulamanız herhangi bir animasyon çalıştırmadığında, kare hızını düşürün. Hareketli bir geçiş başlamak üzere olduğunda, kare hızını yükseltin. Benzer şekilde, uygulamanız arka planda çalışıyorsa (odağını kaybettikten sonra), kare hızını daha da düşürebilirsiniz. Kullanıcının başka bir uygulama veya göreve odaklanmış olması mümkündür.

Aşağıdakiler, farklı etkinlik türleri için uygun olan kare hızının belirlenmesine yönelik bir başlangıç noktası olarak kullanılacak genel kılavuzlardır:

  • Flex çerçevesi kullanıyorsanız, başlangıç kare hızını varsayılan değerde bırakın..

  • Animasyon oynatılırken, kare hızını en az saniyede 20 kare olarak ayarlayın. Saniye başına 30 kareden fazla olan herhangi bir hız genellikle gereksizdir.

  • Bir animasyon oynatılmıyorken, saniyede 12 karelik bir hız büyük olasılıkla yeterlidir.

  • Yüklenen video, uygulama kare hızına bağlı olmaksızın yerel kare hızında oynatılır. Uygulamanızdaki tek hareketli içerik video ise, saniyede 12 karelik bir hız büyük olasılıkla yeterlidir.

  • Uygulamanın bir girdi odağı olmadığında, saniyede 5 karelik bir hız büyük olasılıkla yeterlidir.

  • AIR uygulaması görünür olmadığında, saniyede 2 kare veya daha az bir kare hızı büyük ihtimalle uygundur. Örneğin bu yönerge, bir uygulama simge durumuna küçültüldüğünde geçerli olur. Ayrıca yerel pencerenin visible özelliği false olursa, masaüstü aygıtlarda da geçerli olur.

Flex’e dahil uygulamalar için, spark.components geçerlidir. WindowedApplication sınıfında uygulamanın kare hızını dinamik olarak değiştirmek için dahili destek mevcuttur. backgroundFrameRate özelliği, uygulama etkin olmadığında uygulamanın kare hızını belirler. Varsayılan değer, Spark çerçevesiyle oluşturulmuş bir uygulamanın kare hızını 1 kare/sn olarak değiştiren 1 değeridir. backgroundFrameRate özelliğini ayarlayarak arka plan kare hızını değiştirebilirsiniz. Özelliği başka bir değere ayarlayabilirsiniz veya otomatik kare hızı azaltmayı kapatmak için -1 olarak ayarlayabilirsiniz.

Bir uygulamanın kare hızını dinamik olarak değiştirmeyle ilgili daha fazla bilgi için, aşağıdaki makaleleri inceleyin:

Grant Skinner bir kare hızı azaltma sınıfı oluşturdu. Bu sınıfı uygulamalarınızda, uygulamanız arka plandayken kare hızını otomatik olarak düşürmek için kullanabilirsiniz. FramerateThrottler sınıfı hakkında daha fazla bilgi edinmek ve bu sınıfın kaynak kodunu indirmek için, http://gskinner.com/blog/archives/2009/05/idle_cpu_usage.html adresinde Grant'ın Idle CPU Usage in Adobe AIR and Flash Player (Adobe AIR ve Flash Player'da Boşta İşlemci Kullanımı) başlıklı makalesine bakın.