在C++里面运算符是可以重载的,这一点也是C++比较方便的一个地方。在Lua中其实也是可以模拟出运算符的重载的。在Lua中table中元素的运算都是和一个叫做元表有关的,在一个table型的变量上都有一个元表,在元表中存放着该变量的元函数,在进行运算是,就是利用元表中的这些元函数进行的,比如对两个元...
分类:
其他好文 时间:
2014-07-03 10:17:34
阅读次数:
213
ngx_lua将lua嵌入到nginx,让nginx执行lua脚本,高并发,非阻塞的处理各种请求。
url请求nginx服务器,然后lua查询redis,返回json数据。...
分类:
其他好文 时间:
2014-07-02 09:28:21
阅读次数:
457
lua中的require机制 为了方便代码管理,通常会把lua代码分成不同的模块,然后在通过require函数把它们加载进来。现在看看lua的require的处理流程。1、require机制相关的数据和函数 package.path:保存加载外部模块(lua中"模块"和"文件"这两个概念的分界比较含...
分类:
其他好文 时间:
2014-07-01 21:02:05
阅读次数:
222
在Linux下编译Lua时,我一般都是使用的make generic,这样编译没有什么问题,运行lua的程序也都OK,但是,这样在加载外部的C动态链接库,却总是报下面的错误dynamic libraries not enabled; check your Lua installation查找了半天资...
分类:
其他好文 时间:
2014-07-01 19:59:40
阅读次数:
812
Lua提供了一组传统的,小巧的控制结构,包括用于条件执行的if,用于迭代的while、repeat和for。所有的控制结构都有一个现实的终止符号:if for while 都以end结尾,repeat以until作为结尾。控制结构中的条件表达式可以使任何的值,Lua将所有false和nil的值视为“...
分类:
其他好文 时间:
2014-07-01 12:41:38
阅读次数:
253
LuaJIT本身对Lua作了很多方面的优化工作,对很多Lua自带的库函数进行了优化。优化详情:http://wiki.luajit.org/NYIwiki:http://wiki.luajit.org/Home关于Lua优化的一些细节:1.经常使用的库函数,使用local方式来调用,注意仅一次调用是不起作用的。--thisisthelowestmethod
s..
分类:
其他好文 时间:
2014-07-01 09:49:06
阅读次数:
766
ngx_lua
原理
ngx_lua将Lua嵌入Nginx,可以让Nginx执行Lua脚本,并且高并发、非阻塞的处理各种请求。Lua内建协程,这样就可以很好的将异步回调转换成顺序调用的形式。ngx_lua在Lua中进行的IO操作都会委托给Nginx的事件模型,从而实现非阻塞调用。开发者可以采用串行的方式编写程序,ngx_lua会自动的在进行阻塞的IO操作时中断,保存上下文;然后将IO操作委托给Nginx事件处理机制,在IO操作完成后,ngx_lua会恢复上下文,程序继续执行,这些操作都是对用户程序透明的。 ...
分类:
其他好文 时间:
2014-07-01 08:16:48
阅读次数:
295
使用静态链接的方式
#include
#include
#include
#ifdef __cplusplus
extern "C" {
#endif
#include "lua/include/lua.h"
#include "lua/include/lauxlib.h"
#include "lua/include/lualib.h"
#pragma comment (li...
分类:
其他好文 时间:
2014-07-01 07:50:09
阅读次数:
189
编译 windows上编译lua源码
cl /MD /O2 /W3 /c /DLUA_BUILD_AS_DLL *.c
del *.o
ren lua.obj lua.o
ren luac.obj luac.o
ren print.obj print.o
link /DLL /IMPLIB:lua5.1.lib /OUT:lua5.1.dll *.obj
link /OUT:lua.ex...
分类:
其他好文 时间:
2014-07-01 07:21:11
阅读次数:
199