![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Lua
lishen_
曾经“Want to be a linux geek.”,现在主要做嵌入式开发。
展开
-
Lua和NodeJS
编程模型的思考一年前,迷恋了NodeJS一段时间,因为换工作的原因一年多没有再关注。但是NodeJS这种单线程全异步的编程模型给了我很多启发,在大多数情况下可以极大的简化程序的编写并保持相对较高的性能。其实大多数的应用场景也都是遵循20-80原则的。即百分之20的流程花费了百分之80的时间,剩余百分之80的的流程只花费百分之20的时间。而花费时间比较多的流程又分为CPU密集型和IO密集型,对于原创 2013-02-02 22:35:05 · 3629 阅读 · 0 评论 -
Lua和C语言的交互(一)
Lua生来就是为了和C交互的,因此使用C扩展Lua或者将Lua嵌入到C当中都是非常流行的做法。要想理解C和Lua的交互方式,首先要回顾一下C语言是如何处理函数参数的。C函数和参数大家知道C语言是用汇编实现的,在汇编语言中可没有函数的概念,与函数对应的是叫做子过程的东西,子过程就是一段指令,一个子过程与它调用的子过程之间通过栈来进行参数的传递交互。在一个子过程在调用别的子过程之前,会原创 2013-03-09 21:29:29 · 1208 阅读 · 0 评论 -
Lua和C语言的交互(二)
C调用Lua函数不要怀疑,对Lua函数的调用也是通过栈来进行的。请看如下代码:Lua代码:function lua_func (x, y) print("Parameters are: ", x, y) return (x^2 * math.sin(y))/(1-x) end C代码:double c_func(lua_State *L,原创 2013-03-12 21:06:56 · 891 阅读 · 0 评论 -
Lua和C语言的交互(三)
自定义数据类型: 我们通过使用C语言实现一个Lua数组来演示Lua实现自定义用户数据。数组的结构如下所示:typedef struct NumArray{ int size; //表示数组的大小 double values[]; //此处的values仅代表一个double*类型的指针,values指向NumArray结构后部紧跟的数据的地址}原创 2013-03-23 17:09:28 · 953 阅读 · 0 评论