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.

LEISTUNGSOPTIMIERUNG FÜR DIE <strong>FLASH</strong>-<strong>PLATTFORM</strong><br />

Einsparen von Arbeitsspeicher<br />

trace(System.totalMemory / 1024);<br />

// output: 43100<br />

// Create a BitmapData instance<br />

var image:BitmapData = new BitmapData(800, 600);<br />

trace(System.totalMemory / 1024);<br />

// output: 44964<br />

image.dispose();<br />

image = null;<br />

trace(System.totalMemory / 1024);<br />

// output: 43084<br />

Obwohl <strong>die</strong> dispose()-Methode <strong>die</strong> Pixel aus dem Arbeitsspeicher entfernt, muss der Verweis auf null eingestellt<br />

werden, um eine vollständige Freigabe zu erzielen. Wenn ein BitmapData-Objekt nicht mehr benötigt wird, sollten Sie<br />

immer <strong>die</strong> dispose()-Methode aufrufen und den Verweis auf null einstellen, um den Arbeitsspeicher unmittelbar<br />

freizugeben.<br />

Hinweis: Ab Flash Player 10.1 und AIR 1.5.2 steht eine neue Methode namens disposeXML() <strong>für</strong> <strong>die</strong> System-Klasse zur<br />

Verfügung. Mit <strong>die</strong>ser Methode können Sie ein XML-Objekt sofort <strong>für</strong> <strong>die</strong> Speicherbereinigung zur Verfügung stellen,<br />

indem Sie <strong>die</strong> XML-Struktur als Parameter übergeben.<br />

Verwandte Themen<br />

„Fixieren und Freigeben von Objekten“ auf Seite 29<br />

Verwenden von Bitmaps<br />

Durch Verwendung von Vektoren anstelle von Bitmaps lässt sich Arbeitsspeicher einsparen. Dabei muss jedoch<br />

berücksichtigt werden, dass Vektoren <strong>die</strong> CPU und GPU stark beanspruchen, besonders wenn sie in großer Zahl<br />

verwendet werden. Durch <strong>die</strong> Verwendung von Bitmaps kann das Rendern optimiert werden, da <strong>die</strong><br />

Laufzeitumgebung zum Zeichnen von Pixeln auf dem Bildschirm weniger Verarbeitungsleistung erfordert als zum<br />

Rendern von Vektorinhalt.<br />

Verwandte Themen<br />

„Manuelle Bitmap-Zwischenspeicherung“ auf Seite 63<br />

Bitmap-Downsampling<br />

Zur Optimierung der Arbeitsspeichernutzung werden undurchsichtige 32-Bit-Bilder auf 16 Bit reduziert, wenn Flash<br />

Player einen 16-Bit-Bildschirm erkennt. Dieses Downsampling belegt nur <strong>die</strong> Hälfte der Arbeitsspeicherressourcen;<br />

außerdem können Bilder schneller gerendert werden. Dieses Funktionsmerkmal ist nur in Flash Player 10.1 <strong>für</strong><br />

Windows Mobile verfügbar.<br />

Hinweis: Vor Flash Player 10.1 wurden alle im Arbeitsspeicher erstellten Pixel mit 32 Bit (4 Byte) gespeichert. Ein<br />

einfaches Logo mit einer Größe von 300 x 300 Pixeln belegte 350 KB Arbeitsspeicher (300 x 300 x 4 : 1024). Bei<br />

Verwendung des neuen Verhaltens belegt das gleiche undurchsichtige Logo nur 175 KB. Wenn das Logo transparent ist,<br />

wird kein Downsampling auf 16 Bit vorgenommen und das Bild belegt <strong>die</strong>selbe Arbeitsspeichermenge. Dieses<br />

Funktionsmerkmal gilt nur <strong>für</strong> eingebettete Bitmaps oder <strong>für</strong> Bilder, <strong>die</strong> zur Laufzeit geladen werden (PNG, GIF, JPG).<br />

Letzte Aktualisierung 9.5.2012<br />

14

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!