query_limits()

DEPRECATED

SYNOPSIS

#include <sys/rtlimits.h>

int *query_limits();
int *query_limits(int default);

BESCHREIBUNG

Liefert ein Array mit den momentan gueltigen Laufzeit Limiten bzw.
die standardmaessigen Laufzeit Limiten, wenn <default> wahr ist.
Die Eintraege im gelieferten Array bedeuten:

int[LIMIT_EVAL]:        die maximalen Eval Kosten
int[LIMIT_ARRAY]:       die maximale Anzahl Array Eintraege
int[LIMIT_MAPPING]:     die maximale Anzahl Mapping Eintraege
int[LIMIT_BYTE]:        die maximale Anzahl Bytes, die mit read_bytes()
                        /write_bytes() bearbeitet werden koennen
int[LIMIT_FILE]:        die maximale Anzahl Bytes, die mit read_file()
                        /write_file() bearbeitet werden koennen
int[LIMIT_CALLOUTS]:    die maximale Anzahl gleichzeitiger call_out()s
int[LIMIT_COST]:        wie die aktuellen Kosten einzurechnen sind

Ausser fuer LIMIT_COST ein Limit von '0' (auch LIMIT_UNLIMITED)
bedeutet 'keine Limit'.

LIMIT_COST hat diese Bedeutungen:



  wert > 0: Maximal <wert> fuer als Kosten fuer die aktuelle Ausfuehrung
            verwendet, ungeachtet wie lange sie tatsaechlich dauert.
       = 0: ist die derzeite LIMIT_EVAL groesser als die vorherige
            LIMIT_EVAL, kostet die aktuelle Ausfuehrung nur 10
            Ticks; andernfalls werden die gesamten Kosten angerechnet.
        < 0: (-wert)% der aktuellen Ausfuehrungskosten werden
             angerechnet.

BEMERKUNGEN

"Aktuelle Kosten" bei LIMIT_COST hat im Falle der Benutzung von
limited() die Bedeutung von "im limited verbrauchte Kosten", steuert
also, wieviel der im Durchlaufen der Funktion im limited()
verbrauchten Ticks mit dem Ende von limited() angezogen wird.

BEISPIELE

query_limits()
--> liefert die momentan gueltigen Laufzeit Limiten.
query_limits(1)
--> liefert die standardmaessigen Laufzeit Limiten.

AENDERUNGEN

Eingefuehrt in LDMud 3.2.7.
LIMIT_CALLOUTS wurde in LDMud 3.2.9 eingefuehrt.

SIEHE AUCH

limited(E), set_limits(E)

16.05.2007, Zesstra