| FUNKTION: |
| int get_eval_cost(void) |
| |
| BESCHREIBUNG: |
| Liefert die noch verbleibenden Eval Kosten, die das momentane |
| Kommando noch verbrauchen darf. |
| Der Maximalwert betraegt zur Zeit 1.500.000 Ticks (Stand: 2007). |
| |
| Sollten die Kosten bei der Ausfuehrung irgendwo groesser werden, |
| wird ein Fehler der Art "too long eval" erzeugt. Diese Funktion |
| dient dazu, solche Fehler genau zu lokalisieren bzw. |
| herauszufinden, an welchen Stellen im Code wieviel Rechenzeit |
| verbraucht wird. |
| |
| BEISPIELE |
| void foo() |
| { |
| int prev, used, i; |
| |
| prev=get_eval_cost(); // Merken, was bis hierhin verbraucht wurde |
| for (i=0;i<=1000;i++) // Dann kommt der zu testende Code, zB eine |
| { // Schleife |
| ... |
| } |
| used=prev-get_eval_cost(); // Berechnung der Differenz |
| printf("Die Schleife verbrauchte %d Ticks.\n", used); |
| } |
| |
| SIEHE AUCH: |
| caller_stack_depth(E), rusage(E), command(E), query_limits(E) |
| Konstante: __MAX_EVAL_COST__ |
| |
| 4.Aug 2007 Gloinson |