User:Daemonika Nightfire/Scripts/Memory Walkthrough
Jump to navigation
Jump to search
Memory Walkthrough
This Script show you how you can limit the maximal memory for each mono-script.
sorry for the german description, but i am german :P
<lsl> /*
Memory-walkthrough by Daemonika Nightfire (daemonika.nightfire) Used commands: integer llSetMemoryLimit(integer limit) // legt das maximale Memorylimit fuer das Script fest integer llGetMemoryLimit() // gibt den Wert des Memorylimits zurueck integer llGetUsedMemory() // gibt den Wert des gesamten Memory-verbrauchst zurueck integer llGetFreeMemory() // gibt den Wert des freien Memorys zurueck llScriptProfiler(PROFILE_SCRIPT_MEMORY); // startet Memory-ueberwachung llScriptProfiler(PROFILE_NONE); // beendet Memory-ueberwachung integer llGetSPMaxMemory() // gibt den maximalen Memory-verbrauch des ScriptProfilers zurueck
- /
integer limit = 20000; // dient zum festlegen des maximalen Script-Memory-Limits
Test() // meine Funktion {
// einfache Hovertext-Anzeige
llSetText("Limited Memory " + (string)llGetMemoryLimit() +
"\nUsed Memory " + (string)llGetUsedMemory() +
"\nFree Memory " + (string)llGetFreeMemory(),<1,1,1>,1);
}
default {
state_entry()
{
llSetMemoryLimit(limit);
///// Memory Profiler: testet den Speicherverbrauch saemtlicher Funktionen unterhalb dieses Befehls
llScriptProfiler(PROFILE_SCRIPT_MEMORY); // startet Memory-ueberwachung
Test(); // meine Funktion
///// Memory Profiler: beendet die ueberwachung des Speicherverbrauchs saemtlicher Funktionen oberhalb dieses Befehls
llScriptProfiler(PROFILE_NONE); // beendet Memory-ueberwachung
///// gibt den maximalen Memory-verbrauch der getesteten Funktionen zurueck
llSay(0,"This script used at most " + (string)llGetSPMaxMemory() + " bytes of memory during Test.");
// Ausgabe sieht Folgendermassen aus:
// Hovertext:
// Limited Memory 20000
// Used Memory 4972
// Free Memory 15100
// Chat:
// [05:11] Object: This script used at most 4972 bytes of memory during Test.
}
} </lsl>