2012-04-05 10 views
1

Wenn jemand gesehen hat, dass ich in den letzten paar Tagen viele Fragen zu diesem Projekt geschrieben habe, schätze ich die Hilfe von allen sehr. Mit viel Ärger und Termin steht bald vor der Tür.SWF extrem intensiv auf CPU

Die Beispieldatei (fla und swf) befindet sich hier:

http://www.mediafire.com/download.php?ejy6j9h9r1c1829

Wenn Sie die .swf laden, es auf der CPU Super intensiv ist und RAM-Auslastung und ich weiß nicht, wie sie zu beheben es. Das .swf auf dem obigen Link lädt nur zwei Videos, in denen meine echte etwa 45 Videos (insgesamt 78MB) lädt und sie verwenden beide ungefähr die gleiche CPU-Nutzung. Derjenige, der mehr Videos lädt, benutzt ebenfalls fast 1GB RAM.

Ich weiß nicht, wie das Hauptproblem zu finden ist. Ich hatte viel Hilfe, daher wurde der Code nicht optimiert oder neu strukturiert. Es ruft wiederholt eine PHP-Datei alle drei Sekunden (flashpull.php) auf, um nach einer Variablen in einer Datenbank auf meinem Server zu suchen. Als ich den lokalen Speicher inspizierte, wurden unendlich mehr "flashpull.php" -Dateien auf dem Server gespeichert, aber diese Datei ist nur 2KB groß und ich denke nicht, dass dies dazu führen würde, dass das swf so intensiv ist wie es ist. Gibt es eine Möglichkeit, diese Datei zu überprüfen, aber die lokale Speicherkopie zu überschreiben, oder ist das überhaupt eine große Sache?

Ich benutze Greensock um alle Videos zu laden, ich habe maxConnections auf 6 gesetzt, weiß nicht, ob das Auswirkungen hat.

Ich hoffe wirklich, dass es ein grelles Problem oder Speicherleck gibt, anstatt dass die gesamte Datei gerade so aufgebläht ist, dass sie eine so schlechte Leistung verursacht. JEDE Hilfe wird sehr geschätzt, danke

+0

Entschuldigung, ich habe einen Link zu einem Fla und SWF gepostet, der den vollständigen Code hat. Bitte lassen Sie mich wissen, was ich Ihnen zur Verfügung stellen muss und ich werde es tun. Es ist alles framescript, der Großteil des Codes ist auf Frame 1 und auf Frame 1 innerhalb des Symbols Rewinder. Das swf ist derzeit online unter www.helpg.us, aber diese Seite wurde noch nicht öffentlich angekündigt und ich versuche, dieses Speicherproblem zu beheben, bevor ich das überall posten kann. Ich weiß, es scheint wie "hey, löse mein Problem für mich", aber wenn du mich in irgendeine Richtung zeigst, wo das Speicherproblem sein könnte, kann ich es weiter versuchen. Jetzt bin ich total festgefahren. – ahainen

+0

Ascension: Wie fast alle Flash-Inhalte ist das Render-gebunden, sodass die VM-Leistung weder hier noch dort ist. – fenomas

+0

Lass uns [diese Diskussion im Chat fortsetzen] (http://chat.stackoverflow.com/rooms/9824/discussion-between-ascension-systems-and-fenomas) –

Antwort

2

Sie scheinen eine 3D-Rotation auf Ihren Video-Container angewendet haben. Wählen Sie auf der Bühne den Clip "Rewinder" und im Eigenschafteninspektor -> 3D-Position eine Y-Drehung von -1. Das bedeutet, dass Flash jedes Bild in eine Bitmap rendert und eine leichte 3D-Transformation anwendet. Das ist sehr teuer, und ich habe ein Gefühl, nicht beabsichtigt. ;)

Um zu beheben, Ändern> Transformieren> Entfernen transform (Strg-Shift-Z). Oder die Einstellung der Y-Drehung auf Null sollte ebenfalls funktionieren.

+0

OH MEIN GOTT JA, vielen Dank, dass du das gesehen hast . Wörtlich ~% 30 von der CPU-Nutzung fallen gelassen. Vielen Dank, ich hätte es nie bemerkt. – ahainen

+0

Ich bin jetzt ernsthaft schwindlig, es funktioniert so viel besser. DANKE!! – ahainen

+0

Froh, dass es geholfen hat! Ich wünschte, ich könnte sagen, dass es einen einfachen Weg gibt, solche Probleme zu entdecken, aber die einzige Art, wie ich es bemerkt habe, ist, dass ich den Clip ausgewählt habe und den kleinen "3D Achsen" -Marker erkannt habe, wenn ein Clip eine 3D-Drehung hat. – fenomas