1.apt-get install liblua5.1-0-dev 2.编辑hello.c #include "lua.h" #include "lauxlib.h" int main(int argc, char **argv) { lua_State *L = luaL_newstate(); ...
分类:
系统相关 时间:
2020-12-22 12:31:57
阅读次数:
0
真正的多线程是具有抢占式和内存共享两个特点,这也是导致多线程同步问题的根本原因。而lua中的线程并不存在这个问题,首先lua的线程的状态并不共享内存,其次lua的线程是协同工作的,并非抢占式的。 主线程:lua_State* L = luaL_newstate() 不仅创建了一个lua状态,还创建了 ...
分类:
编程语言 时间:
2016-07-12 19:28:27
阅读次数:
154
使用lua5.2发现编译器找不到lua_open函数,最后发现这个函数在5.2中已经被遗弃,被新的函数luaL_newstate和lua_newstate替代。lua_newstate可自定义内存分配函数,luaL_newstate使用默认的内存分配方式。...
分类:
其他好文 时间:
2015-08-10 22:10:24
阅读次数:
441
本文内容基于版本:Lua 5.3.0global_State与lua_State结构的关联 通过luaL_newstate函数创建虚拟机时,第一块申请的内存将用来存储lua_State(主线程)和global_State(全局状态机)实例。为了避免内存碎片的产生,同时减少内存分配和释放的次数,Lu....
分类:
其他好文 时间:
2015-05-29 19:44:50
阅读次数:
279
本文分析基于的Lua版本为:Lua5.3.0Lua内存管理器规约 Lua允许用户自定义内存管理器,并在创建Lua虚拟机时传入。当然该内存管理器必须遵循Lua已定义的行为规则。 我们已经知道创建一个Lua虚拟机需要使用luaL_newstate函数:lua_State *L = luaL_newst....
分类:
其他好文 时间:
2015-05-26 20:35:22
阅读次数:
347
//test.c#include #include "lua.h"#include "lualib.h"#include "lauxlib.h"#include lua_State *L;int main(){ L = luaL_newstate();//创建state以及加载标准库 ...
分类:
编程语言 时间:
2015-05-07 14:08:51
阅读次数:
139
这个程序从终端读入内容,而后按照lua块执行。
#include
#include
#include "lua.h"
#include "lauxlib.h"
#include "lualib.h"
int main(){
char buff[1024];
int error;
memset(buff, 0, sizeof(buff));
lua_Stat...
分类:
其他好文 时间:
2014-08-29 18:23:18
阅读次数:
314