Runtime (Die Laufzeit)


Runtime (zu deutsch: die Laufzeit) ist eine weitere Eigenschaft, die neben Storage, Me und Echo in der Basisklasse MyGridProgram Deines Skripts existiert. Diese Eigenschaft enthält Informationen über die Betriebsumgebung Deines Skripts. Insbesondere diese Member:

  • TimeSinceLastRun
    Ruft die Zeit ab, die seit dem letzten Ausführen der Hauptmethode dieses Programms verstrichen ist. Diese Eigenschaft gibt keine gültigen Daten zurück, weder im Konstruktor noch in der Save-Methode. Denken Sie auch daran, dass beim allerersten Mal, wenn ein Skript in jeder Sitzung ausgeführt wird, diese Eigenschaft leer ist (TimeSpan.Zero), da es - offensichtlich - noch keinen letzten Durchlauf gegeben hat.
     
  • LastRunTimeMs
    Liefert die Zeit in Bruchteilen von Millisekunden, die benötigt wurde, um die Main-Methode beim letzten Durchlauf auszuführen. Diese Methode gibt keine gültigen Daten zurück, weder im Konstruktor noch in der Save-Methode. Mit dieser Eigenschaft können Sie Ihr Skript profilieren und herausfinden, ob es schnell genug läuft.
     
  • MaxInstructionCount
    Um die Laufzeit von Skripten auf einem vernünftigen Niveau zu halten, schreibt der programmierbare Block eine maximale Anzahl von signifikanten Anweisungen vor, bevor ein Skript als zu komplex gilt und zwangsweise beendet wird. Eine "signifikante Anweisung" beinhaltet Bedingungen (if/else), Schalter, Methodenaufrufe und ähnliches. Was genau eine "signifikante Anweisung" ist, ist nicht wichtig, dies ist nur ein Werkzeug, das Dir hilft, die offensichtlichsten Fehler zu beheben. Diese Eigenschaft erhält die maximale Anzahl von signifikanten Anweisungen, die während eines einzigen Durchlaufs ausgeführt werden können, einschließlich aller anderen programmierbaren Blöcke, die sofort aufgerufen werden. Beachte, dass, wenn Du auch nur annähernd an diese maximale Grenze herankommen, Dein Skript wahrscheinlich viel zu komplext und/oder rechenintesiv ist und die Performance des Server drückt.
     
  • CurrentInstructionCount
    Ruft die aktuelle Anzahl der signifikanten Anweisungen ab, die bisher in diesem Lauf ausgeführt wurden.