Einzelnen Beitrag anzeigen

WorstNightmare

Registriert seit: 6. Okt 2008
159 Beiträge
 
RAD-Studio 2010 Arc
 
#115

AW: ScriptEngine II (v. 0.6)

  Alt 18. Mär 2011, 15:26
Alle meine Scripts laufen jetzt schon seit längerer Zeit mit dieser Engine und ich muss sagen, ich bin sehr zufrieden.

Es gibt allerdings ein mittelschweres Problem: Der Speicherverbrauch.

Für ein simples Script wie dieses [Link] fallen knapp 5 (!) MB Speicher an, sobald Compile() ausgeführt wurde. Das Problem an diesen Event-Scripts ist, dass sie für jeden Channel-Server (wovon es durchschnittlich 6 gibt) extra instanziert werden müssen und die ganze Zeit aktiv sein müssen, da sie oft auch zeitgesteuerte Aufträge haben und Variablen über einen längeren Zeitraum speichern. Momentan gibt es zwar nur dieses eine, wenn allerdings später 15 vorhanden sind ist dieser extreme Verbrauch echt nicht mehr tragbar.

Ich bin nicht ganz sicher warum für ein 600 Byte langes Script plötzlich 4,5 MB verbraucht werden, könnte es mit der verwendeten Unit zusammenhängen? Diese setzt sich aus den Klassen TEventInstance und TEventManager aus dieser Datei und TScriptMapleCharacter zusammen. In der letzteren Datei ist auch der RTTI Class-Importer.
  Mit Zitat antworten Zitat