<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-CN">
	<id>http://i.bnu.edu.cn/wiki/index.php?action=history&amp;feed=atom&amp;title=LlMessageLinked</id>
	<title>LlMessageLinked - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="http://i.bnu.edu.cn/wiki/index.php?action=history&amp;feed=atom&amp;title=LlMessageLinked"/>
	<link rel="alternate" type="text/html" href="http://i.bnu.edu.cn/wiki/index.php?title=LlMessageLinked&amp;action=history"/>
	<updated>2026-06-01T05:31:33Z</updated>
	<subtitle>本wiki的该页面的版本历史</subtitle>
	<generator>MediaWiki 1.31.0</generator>
	<entry>
		<id>http://i.bnu.edu.cn/wiki/index.php?title=LlMessageLinked&amp;diff=833&amp;oldid=prev</id>
		<title>Ty：创建页面，内容为“{{LSL Header|ml=*}}{{LSLC|Keywords}}{{LSLC|Flow Control}}{{LSLC|}}   {{函数详情 |函数名 = Function: llMessageLinked( integer link, integer num, string str, ke…”</title>
		<link rel="alternate" type="text/html" href="http://i.bnu.edu.cn/wiki/index.php?title=LlMessageLinked&amp;diff=833&amp;oldid=prev"/>
		<updated>2020-11-27T08:32:36Z</updated>

		<summary type="html">&lt;p&gt;创建页面，内容为“{{LSL Header|ml=*}}{{LSLC|Keywords}}{{LSLC|Flow Control}}{{LSLC|}}   {{函数详情 |函数名 = Function: llMessageLinked( integer link, integer num, string str, ke…”&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{LSL Header|ml=*}}{{LSLC|Keywords}}{{LSLC|Flow Control}}{{LSLC|}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{函数详情&lt;br /&gt;
|函数名 = Function: llMessageLinked( integer link, integer num, string str, key id );&lt;br /&gt;
|参数= 参数：&lt;br /&gt;
• integer	link	–	Link number (0: unlinked, 1: root prim, &amp;gt;1: child prims and seated avatars) or a LINK_* flag, controls which prim(s) receive the link_message.	&lt;br /&gt;
&lt;br /&gt;
• integer	num	–	Value of the second parameter of the resulting link_message event.	&lt;br /&gt;
&lt;br /&gt;
• string	str	–	Value of the third parameter of the resulting link_message event.	&lt;br /&gt;
&lt;br /&gt;
• key	id	–	Value of the fourth parameter of the resulting link_message event.&lt;br /&gt;
|返回值= 返回值：&lt;br /&gt;
此函数的目的是允许同一对象中的脚本进行通信。它在 link 所描述的 prim (s)中的所有脚本中触发具有相同参数 num、 str 和 id 的 link _ message 事件。&lt;br /&gt;
你可以使用 id 作为第二个字符串字段[2]。Str 和 id 的大小仅受可用脚本内存的限制。&lt;br /&gt;
|注意事项=&lt;br /&gt;
注意事项&lt;br /&gt;
*脚本可以听到自己的链接消息，如果链接目标的 prim 是在[3]。这就产生了无限循环的可能性(这是一件坏事) ; 对于如何处理和传递消息要非常小心。&lt;br /&gt;
*Messages sent via llMessageLinked to a script that is sleeping, delayed, or lagged, are queued until the end of the delay. The event queue can hold 64 events.&lt;br /&gt;
 如果接收到事件并且队列已满，则事件将以静默方式被删除。&lt;br /&gt;
 避免同时向大量脚本发送 link _ 消息，因为这会导致延迟尖峰。这通常发生在使用 multi-prim link _ * 标志时，并且可能导致脚本执行变慢或停止。&lt;br /&gt;
 避免将 link _ 消息发送到目标的速度比处理它们的速度快。这样做有填充事件队列的风险，以及随后的消息被无声地丢弃的风险。&lt;br /&gt;
*当脚本状态发生更改时，所有挂起的事件都将被删除，包括排队的 link _ 消息。&lt;br /&gt;
*如果 link 是一个无效的链接编号，那么函数就会默认地失败。&lt;br /&gt;
*如果 str &amp;amp; id 超过了捕获结果 link _ message 事件的脚本的可用内存，那么该脚本就会因为堆栈-堆冲突而崩溃。&lt;br /&gt;
示例一&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
default&lt;br /&gt;
{&lt;br /&gt;
    // assumptions  // object name: LSLWiki // script name: _lslwiki&lt;br /&gt;
    state_entry()&lt;br /&gt;
    {&lt;br /&gt;
        llMessageLinked(LINK_THIS, 0, llGetScriptName(), &amp;quot;&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
    link_message(integer sender_num, integer num, string msg, key id)&lt;br /&gt;
    {&lt;br /&gt;
        llOwnerSay(msg);&lt;br /&gt;
        // the owner of object LSLWiki will hear&lt;br /&gt;
        // LSLWiki:_lslwiki&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
无限循环&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Message_Control(integer l, integer n) // Message_Total_Lack_Of_Control&lt;br /&gt;
{&lt;br /&gt;
    integer r = (++n); // Increment the value of n.&lt;br /&gt;
    llMessageLinked( l, r, &amp;quot;&amp;quot;, &amp;quot;&amp;quot;); // Send the result to l&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
default&lt;br /&gt;
{&lt;br /&gt;
    state_entry()&lt;br /&gt;
    {&lt;br /&gt;
        Message_Control(LINK_SET, 0); // Tell all the scripts in the object that we have state_entered.&lt;br /&gt;
    }&lt;br /&gt;
    link_message(integer Sender, integer Number, string String, key Key) // This script is in the object too.&lt;br /&gt;
    {&lt;br /&gt;
        Message_Control(Sender, Number); // No filtering condition exists.&lt;br /&gt;
        llOwnerSay(((string)Number)); // Look at all the pretty numbers!&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
有用的片段&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
default&lt;br /&gt;
{&lt;br /&gt;
    // Quick and dirty debugging link_messages&lt;br /&gt;
    link_message(integer sender_num, integer num, string msg, key id)&lt;br /&gt;
    {&lt;br /&gt;
        llSay(DEBUG_CHANNEL, llList2CSV([sender_num, num, msg, id]));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// This is just an example script, you shouldn't handle link message within single script this way.&lt;br /&gt;
 &lt;br /&gt;
default&lt;br /&gt;
{&lt;br /&gt;
    // To propagate an unlimted number of arguments of any type.&lt;br /&gt;
    // Presumed, the separator string isn't used in any source string!&lt;br /&gt;
    state_entry()&lt;br /&gt;
    {&lt;br /&gt;
        list my_list = [1, 2.0, &amp;quot;a string&amp;quot;, &amp;lt;1, 2, 3&amp;gt;, &amp;lt;1, 2, 3, 4&amp;gt;, llGetOwner()];&lt;br /&gt;
        string list_parameter = llDumpList2String(my_list, &amp;quot;|&amp;quot;);    // Convert the list to a string&lt;br /&gt;
        llMessageLinked(LINK_THIS, 0, list_parameter, &amp;quot;&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
 &lt;br /&gt;
    link_message(integer sender_num, integer num, string list_argument, key id)&lt;br /&gt;
    {&lt;br /&gt;
        list re_list = llParseString2List(list_argument, [&amp;quot;|&amp;quot;], []);    // Parse the string back to a list&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|相关函数=&lt;br /&gt;
[[llGetLinkNumber]]--返回脚本所在 prim 的链接号。&lt;br /&gt;
|相关事件=&lt;br /&gt;
[[link  message]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Ty</name></author>
		
	</entry>
</feed>