Leistungsoptimierung für die ADOBE FLASH-PLATTFORM
Leistungsoptimierung für die ADOBE® FLASH®-PLATTFORM
Leistungsoptimierung für die ADOBE® FLASH®-PLATTFORM
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