- 博客(2)
- 资源 (2)
- 收藏
- 关注
原创 Lua 源码分析之闭包Closure
闭包是Lua语言编程一个重要而又常用的概念。它主要作用是在函数离开作用域后还可以访问外部的临时变量,这些变量称为upvalue。 闭包分为两种,分别CClosure和LClosure。它们都被封装到一个Closure结构体里,CClosure和LClosure都有一个ClosureHeader的结构体。结构体ClosureHeader的字段作用: 1...
2019-04-11 19:29:44 996
原创 Lua 源码分析之Table - Rehash过程
Lua的Table的内存结构主要分array part和hash part,它们俩的内存大小是动态变化的,如果空间不够就需要分配更多的空间,如果空间利用率太少就需要缩减内存,这个过程叫做rehash。 现在来看看rehash是怎么样的过程。 rehash内部,主要是做了以下几件事: a.计算array part的key的数量 b.计算hash part的key的数量 c.计...
2019-04-01 15:44:24 2436
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人