上一页 1 2 3 4 5 6 7 8 ··· 29 下一页

lua require loadfile dofile 三者的区别

摘要: loadfile:特点:只编译,不运行。 一个lua文件是作为一个代码块(chunk)存在的,其实质就是一个函数,loadfile编译代码成中间码并且返回编译后的chunk作为一个函数,而不执行代码 ,并且loadfile一旦出错不会抛出错误信息而是返回错误代号。一旦发生错误,loadfile会返回 阅读全文
posted @ 2020-04-03 16:30 123_123 阅读(462) 评论(0) 推荐(0) 编辑

lua面试题

摘要: 在 Lua table 中我们可以访问对应的key来得到value值,但是却无法对两个 table 进行操作。 因此 Lua 提供了元表(Metatable),允许我们改变table的行为,每个行为关联了对应的元方法。 例如,使用元表我们可以定义Lua如何计算两个table的相加操作a+b。 当Lu 阅读全文
posted @ 2020-04-03 12:20 123_123 阅读(984) 评论(0) 推荐(0) 编辑

lua pairs 和 ipairs区别

摘要: pairs: 迭代 table,可以遍历表中所有的 key 可以返回 nil ipairs: 迭代数组,不能返回 nil,如果遇到 nil 则退出 local tab= { [1] = "a", [3] = "b", [4] = "c" } for i,v in pairs(tab) do -- 输 阅读全文
posted @ 2020-04-03 11:46 123_123 阅读(218) 评论(0) 推荐(0) 编辑

lua GC垃圾收集 内存优化

摘要: lua垃圾收集函数: collectgarbage("collect"): 做一次完整的垃圾收集循环。通过参数 opt 它提供了一组不同的功能: collectgarbage("count"): 以 K 字节数为单位返回 Lua 使用的总内存数。 这个值有小数部分,所以只需要乘上 1024 就能得到 阅读全文
posted @ 2020-03-31 16:00 123_123 阅读(677) 评论(0) 推荐(0) 编辑

unity lua热更新原理

摘要: 热更新原理 Lua的 require(modelname) 把一个lua文件加载存放到package.loaded[modelname]。当我们加载一个模块的时候,会先判断是否在package.loaded中已存在,若存在则返回改模块,不存在才会加载(loadfile),防止重复加载。package 阅读全文
posted @ 2020-03-31 15:59 123_123 阅读(1046) 评论(0) 推荐(0) 编辑

Lua中Table的实现

摘要: Lua中对于表的设计,是基于数组和散列表,和其他语言不同,对于数组的下标是从1开始的,对于散列表而言,只要其键值补位nil,都可以存储在其中。 首先,考虑 table = {1, 2, 3, 4, 5, 6, 7, 8} 这样的结构, 为了获得最快的访问速度,它是用数组实现的 那么如果执行table 阅读全文
posted @ 2020-03-31 15:20 123_123 阅读(379) 评论(0) 推荐(0) 编辑

luaGC 原理

摘要: 一、GC的原理及其算法设计 不同的语言,对GC算法的设计不同,常见的GC算法是引用计数和Mark-Sweep算法, c#采用的是Mark-sweep && compact算法, Lua采用的是Mark-sweep算法,分开说一下: 引用计数算法:在一个对象被引用的情况下,将其引用计数加1,反之则减1 阅读全文
posted @ 2020-03-30 18:02 123_123 阅读(881) 评论(0) 推荐(0) 编辑

redis 面试题

摘要: 1.redis介绍: 1、redis 是一个基于key_value 的内存数据库。 2、支持的数据类型包括不限于: string,hash,set,sort-set,list。 3、redis分布式锁:redis 分布式锁主要基于setnx命令,setnx:不存在则创建, 存在则不做任何操作。 如果 阅读全文
posted @ 2020-03-30 11:04 123_123 阅读(217) 评论(0) 推荐(0) 编辑

lua 元表操作

摘要: 先来了解一下lua的元表操作: 在 Lua table 中我们可以访问对应的key来得到value值,但是却无法对两个 table 进行操作。 因此 Lua 提供了元表(Metatable),允许我们改变table的行为,每个行为关联了对应的元方法。 例如,使用元表我们可以定义Lua如何计算两个ta 阅读全文
posted @ 2020-03-25 18:07 123_123 阅读(635) 评论(0) 推荐(0) 编辑

AOI 场景分析和方案设计

摘要: 很容易想象,AOI的需求最简单的做法是全世界玩家信息全部同步给客户端。这个方案是O(n^2)的复杂度,对服务器来说是不能承受之重。但如果是超小地图十人以下的特殊需求倒可能是个简洁的方案。 比较流行的方案是网格法,简单,高效:将地图按设定的格子大小划分为网格,设玩家移动到某坐标,我们很容易地将玩家归入 阅读全文
posted @ 2020-03-23 15:16 123_123 阅读(424) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 29 下一页