Zurück   Flashforum > Flash > ActionScript > ActionScript 3

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 12-02-2010, 21:22   #1 (permalink)
Neuer User
 
Registriert seit: Aug 2008
Beiträge: 205
Überschreibt Actionscript bestehende Vorgänge?

Sorry für den nichtssagenden Titel, aber ich wußte nicht wie es nennen könnte.
Letzlich ist das auch eine InformatikNewbiefrage.

Meine Fragestellung zielt auf folgendes ab:

Ich habe einen xmlSocket, der von einem Javaserver jsonStrings erhält, die dann verarbeitet werden. Das klappt soweit ganz gut.
Ich erhalte die Daten in meiner mainclass und gebe sie dann weiter an an anderes Objekt um sie dann dort zu bearbeiten. Jetzt dachte ich mir, dass ich mir diese Klasse auch sparen kann, weil dort keine allzu aufwendigen Dinge passieren, eine eigene Klasse, also nicht unbedingt gerechtfertigt wäre.
An dem xmlsocket ist ein eventhandler registriert, der sich dann darum kümmert.
Bisher war es so:

PHP-Code:
//Der Eventhandler für den xmlSocket
private function onIncomingData(event:DataEvent):void  
        
{    
            var 
data:String event.data;    
            var 
session:SessionContainer = new SessionContainer ();
            
session.addEventListener (MyEvents.NEWROCKETaddRocketfalse0true);
                         
//weitere eventhandler
            
session.init(data);
        } 
Jetzt möchte ich anstatt eines SessionContainers (der seinerseits die Daten analysiert und dann eben unterschiedliche Evens abfeuert (newrocket, removerocket etc..., das ganze ist ein multiplayergame, bzw soll mal eines werden, nunja ), die Daten direkt in der mainclass analysieren.

Also z.B so:

PHP-Code:
private function onIncomingData(event:DataEvent):void  
        
{    
            var 
data:String event.data;    
            
session(data); //session ist nun eine function 
        
}

private function 
session (data:String)

               {
                  
//analysiere die Daten und hole die entsprechenden Objeket  auf  die Bühne

                

Meine Befürchtung ist nun bei der zweiten Lösung, dass der Datenempfang des socketservers schneller sein könnte, als die Verarbeitung der Daten, in der function, die aufgerufen wird. Die Verarbeitung also einfach abgebrochen wird, und die lokalen Daten (in dem Fall mein data-String) einfach überschrieben wird.

Aber während ich so darüber nachdenke, bin ich mir sicher, dass so etwas nicht passieren kann, oder?
Flashesjetzt ist offline   Mit Zitat antworten
Alt 13-02-2010, 16:27   #2 (permalink)
Neuer User
 
Registriert seit: Aug 2008
Beiträge: 205
Ums mal auf den Punkt zu bringen:

Was passiert wenn die events schneller abgefeuert werden, als der eventhandler sie abarbeiten kann?
Flashesjetzt ist offline   Mit Zitat antworten
Alt 13-02-2010, 16:41   #3 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.141
So was geht in einer Single-threaded VM nicht. Es sei denn, dein Datenfluss ist entsprechend implementiert.
Omega Psi ist offline   Mit Zitat antworten
Alt 13-02-2010, 16:51   #4 (permalink)
Neuer User
 
Registriert seit: Jul 2003
Beiträge: 1.197
Zitat:
Zitat von Flashesjetzt Beitrag anzeigen
Ums mal auf den Punkt zu bringen:

Was passiert wenn die events schneller abgefeuert werden, als der eventhandler sie abarbeiten kann?
Ich würde mal vermuten, daß dann die FPS sinken, also der Flashfilm langsamer abgespielt wird. Passiert ja auch in anderen Situationen. Stichwort "Performance".
__________________
EDV = Ende Der Vernunft
hmpf ist offline   Mit Zitat antworten
Alt 13-02-2010, 17:29   #5 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.141
Eventhandler werden synchron zum Dispatch ausgeführt, deswegen kann dieser Effekt nicht eintreten.

Es sei denn, es kommen zu viele Daten, dann kommt es zu Performance-Problemen wie hmpf schon sagte.
Omega Psi ist offline   Mit Zitat antworten
Alt 16-02-2010, 22:58   #6 (permalink)
Neuer User
 
Registriert seit: Aug 2008
Beiträge: 205
Danke euch. Im Grunde dachte ich mir das schon. Es läuft nach wie vor einwandfrei.
Flashesjetzt ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
actionscript 3.0

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
a überschreibt a img Digger2k3 HTML und CSS 6 11-07-2009 18:28
dynamische Vorgänge.. nach .onLoad gehts net weiter? dummy2 Flash Einsteiger 6 01-08-2006 05:01
Tween vorgänge ruckeln stark ReDeviL 123 Flash MX 5 08-11-2004 15:09
for-schleife überschreibt var! warum ??? ~flasher ActionScript 1 4 08-10-2004 22:50
vorgänge am rechner als video aufzeichnen... ne-c-ro Am Rande 9 20-02-2003 15:35


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:37 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele