30.07.2012 Aufrufe

Leistungsoptimierung für die ADOBE FLASH-PLATTFORM

Leistungsoptimierung für die ADOBE® FLASH®-PLATTFORM

Leistungsoptimierung für die ADOBE® FLASH®-PLATTFORM

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Kapitel 3: Minimieren der CPU-<br />

Auslastung<br />

Bei den Optimierungsbestrebungen muss auch der CPU-Auslastung Beachtung eingeräumt werden. Die Optimierung<br />

der CPU-Verarbeitung verbessert <strong>die</strong> Leistung und verlängert damit <strong>die</strong> Akkulaufzeit auf Mobilgeräten.<br />

Verbesserungen der CPU-Auslastung in Flash<br />

Player 10.1<br />

In Flash Player 10.1 stehen zwei neue Funktionsmerkmale zur Verfügung, mit denen <strong>die</strong> CPU-Verarbeitungsleistung<br />

verbessert werden kann. Zu den Funktionen gehören das Anhalten und Fortsetzen von SWF-Inhalten, wenn sie sich<br />

außerhalb des Bildschirms befinden, und <strong>die</strong> Begrenzung der Anzahl Flash Player-Instanzen auf einer Seite.<br />

Anhalten, Drosseln und Fortsetzen<br />

Hinweis: Die Funktionalität <strong>für</strong> das Anhalten, Drosseln und Fortsetzen gilt nicht <strong>für</strong> Adobe® AIR®-Anwendungen.<br />

Zur Optimierung der CPU- und Akkuauslastung steht in Flash Player 10.1 ein neues Funktionsmerkmal <strong>für</strong> inaktive<br />

Instanzen zur Verfügung. Mit <strong>die</strong>sem Funktionsmerkmal können Sie <strong>die</strong> CPU-Auslastung verringern, indem Sie eine<br />

SWF-Datei anhalten und wieder starten, wenn der Inhalt auf dem Bildschirm ein- oder ausgeblendet wird. Flash<br />

Player gibt dabei so viel Arbeitsspeicher wie möglich frei, indem Objekte entfernt werden, <strong>die</strong> neu erstellt werden<br />

können, wenn das Abspielen des Inhalts fortgesetzt wird. Der Inhalt muss vollständig vom Bildschirm ausgeblendet<br />

sein, damit er als nicht auf dem Bildschirm befindlich (offscreen) betrachtet wird.<br />

In zwei Fällen gilt SWF-Inhalt als offscreen:<br />

Der Benutzer führt einen Bildlauf auf der Seite durch, wodurch der SWF-Inhalt offscreen verschoben wird.<br />

Wenn in <strong>die</strong>sem Fall Audio oder Video abgespielt wird, wird der Inhalt zwar weiter abgespielt, aber das Rendern<br />

wird gestoppt. Wenn kein Audio oder Video abgespielt wird, stellen Sie den HTML-Parameter hasPriority auf<br />

„true“ ein, um sicherzustellen, dass <strong>die</strong> Wiedergabe oder <strong>die</strong> ActionScript-Ausführung nicht angehalten wird.<br />

Beachten Sie jedoch, dass das Rendern von SWF-Inhalt angehalten wird, wenn Inhalt ausgeblendet oder offscreen<br />

ist, unabhängig vom Wert des HTML-Parameters hasPriority.<br />

Im Browser wird eine Registerkarte geöffnet, wodurch der SWF-Inhalt in den Hintergrund verschoben wird.<br />

In <strong>die</strong>sem Fall wird der SWF-Inhalt auf eine Geschwindigkeit zwischen 2 und 8 fps verlangsamt, oder gedrosselt,<br />

unabhängig vom Wert des HTML-Tags hasPriority. Die Wiedergabe von Audio und Video wird gestoppt und<br />

das Rendern von Inhalt wird nicht verarbeitet, es sei denn, der SWF-Inhalt wird wieder sichtbar.<br />

Für Flash Player 11.2 und höher in Windows- und Mac-Desktopbrowsern können Sie das ThrottleEvent in Ihrer<br />

Anwendung verwenden. Flash Player setzt ein ThrottleEvent ab, wenn Flash Player <strong>die</strong> Wiedergabe anhält, drosselt<br />

oder fortsetzt.<br />

Bei ThrottleEvent handelt es sich um ein broadcast-Ereignis. Das bedeutet, dass es von allen EventDispatcher-<br />

Objekten ausgelöst wird, <strong>die</strong> einen Listener <strong>für</strong> <strong>die</strong>ses Ereignis registriert haben. Weitere Informationen zu brodcast-<br />

Ereignissen finden Sie im Abschnitt zur DisplayObject-Klasse.<br />

Letzte Aktualisierung 9.5.2012<br />

25

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!