Grundsätzlich kann man in einem GuiXT-Trace über die Zeitangabe ablesen, wieviel Zeit zur Verarbeitung benötigt wurde. Gerade bei großen Datenmengen und bei Schlaufen in der Programmierung, benötigt das Schreiben des Traces im Verhältnis zu der eigentlichen Laufzeit relativ viel Zeit.
Daher habe ich eine Methode entwickelt um die Nettozeit eines Scriptes (InputScript wie auch GuiXT-Script) festzustellen.
Das Prinzip ist ganz einfach: Man bestimmt ganz am Anfang von einem InputScript/GuiXT-Script die Anfangszeit und am Ende des Scriptes die Endzeit.
Der Javabefehl Date.now() macht dies in dem er eine Zahl in Hundertstelsekunden angibt. Gemessen ab 1. Januar 1970
Am Schluss errechnet man über die Differenz die eigentliche Laufzeit.
Dazu habe ich folgendes Script verwendet:
calljs Start = Timestamp
// da wären Ihre eigentlichen Scriptbefehle
calljs Ende = Timestamp
Set V[Dauer] &V[Ende] - &V[Start]
Set V[Dauer] &V[Dauer] / 1000 Decimals="3"
Message "Dauer = &V[Dauer] sec"
Das zugehörige Javascript sieht so aus:
function Timestamp() {
var Time = Date.now();
return Time;
};
Am Schluss gibt das Script die entsprechende Laufzeit aus: