全局字典相关函数 本文简述全局字典相关函数的语法、作用、入参、返回值、示例。 ctyun.dict.DICT.set 函数信息详见下表: 项目 描述 语法 success, err, forcible DICT:set(keyname, value, ttl?, flags?) 作用 在全局字典ctyun.dict.DICT 中设置一个键值对。 其中value可以是Lua布尔值、数字、字符串,或nil类型的,不可以是table类型的。 入参 keyname:设置内容的键。 value:设置内容的值。 ttl:设置key/value的有效期(单位是秒),为可选参数,默认是不过期的。如果为0(默认)则表示永远不失效。 flags: 用来做用户标识,可以标识set操作的执行者,默认是0。只能设置number类型; 为可选参数。 返回值 success:布尔值,用来表示是否成功set。 err:如果success的值是false,就会将错误信息存放在err中。 forcible:布尔值,用来表示是否有数据被强制删除。在存储数据的过程中,如果内存空间不够就会使用LRU算法清除数据,此时,forcible为true。 示例: applescript 假设全局字典名称为cats local cats ctyun.dict.cats local succ, err, forcible cats:set("Marry", "it is a nice cat!") ctyun.dict.DICT.safeset 函数信息详见下表: 项目 描述 语法 success, err, forcible DICT:safeset(keyname, value, ttl?, flags?) 作用 与set类似,但在内存不足的情况下,它不会覆盖已经存在且没有过期的数据,而会报“no memory”错误并返回nil。 入参 keyname:设置内容的键。 value:设置内容的值。 ttl:设置key/value的有效期(单位是秒),为可选参数,默认是不过期的。如果为0(默认)则表示永远不失效。 flags: 用来做用户标识,可以标识set操作的执行者,默认是0。只能设置number类型; 为可选参数。 返回值 success:布尔值,用来表示是否成功set。 err:如果success的值是false,就会将错误信息存放在err中。 forcible:布尔值,用来表示是否有数据被强制删除。在存储数据的过程中,如果内存空间不够就会使用LRU算法清除数据,此时,forcible为true。 示例: applescript 假设全局字典名称为cats local cats ctyun.dict.cats local succ, err, forcible cats:safeset("Marry", "it is a nice cat!")