LlSetMemoryLimit

来自人工智能助力教育知识百科
跳转至: 导航搜索

Template:Needs Translation/


函数名
Function: integer llSetMemoryLimit( integer limit );
参数:

•整数限制

返回值:请求限制为此脚本保留的字节数。如果成功设置内存限制,则返回布尔值(整数);如果设置不成功,则返回FALSE。
注意事项
此函数的行为取决于脚本使用的VM。Mono是新的虚拟机,LSO是旧的虚拟机。

单声道 设置脚本的内存限制。 内存限制可设置为64k。 内存限制不能设置为低于脚本当前使用的内存。 所有新脚本的起始限制为64k 在引入此函数之前编译的Mono脚本继续使用64k限制。 下限将影响viewerui和llGetObjectDetails报告的内存量。 内存限制不是脚本实际使用的实际内存量,而是它的上限。 LSO公司 对LSO脚本没有影响,LSO脚本总是使用16k

单声道 当n太小时,将忽略llSetMemoryLimit(n),并且不会更改内存限制

示例
示例1
// Memory-walkthrough by Daemonika Nightfire (daemonika.nightfire)
 
integer limit = 20000; // <- bytes
 
Test()
{
    llSetText("Limited Memory " + (string)llGetMemoryLimit() +
              "\nUsed Memory " + (string)llGetUsedMemory() +
              "\nFree Memory " + (string)llGetFreeMemory(),<1,1,1>,1);
}
 
default
{
    state_entry()
    {
        llSetMemoryLimit(limit);
 
        llScriptProfiler(PROFILE_SCRIPT_MEMORY);
        Test();
        llScriptProfiler(PROFILE_NONE);
 
        llSay(0,"This script used at most " + (string)llGetSPMaxMemory() + " bytes of memory during Test.");
    }
}
 
// Result:
 
// Floating Text:
// Limited Memory 20000
// Used Memory 4972
// Free Memory 15100
 
// Chat:
// [05:11] Object: This script used at most 4972 bytes of memory during Test.
相关函数
llScriptProfiler

llGetSPMaxMemory

llGetMemoryLimit

lGetFreeMemory

llGetUsedMemory

llGetObjectDetails

相关事件