lua

Xmake v2.7.3 发布,包组件和 C++ 模块增量构建支持

它非常的轻量,没有任何依赖,因为它内置了 Lua 运行时。 它使用 xmake.lua 维护项目构建,相比 makefile/CMakeLists.txt,配置语法更加简洁直观,对新手非常友好,短时间内就能快速入门,能够让用户把更多的精力集中在实际的项目开发上。 ... »

tboox

在Debian11上安装Openresty服务(Nginx+Lua)的详细教程

目录 Debian 更新系统 添加 openresty 仓库 查看安装的版本: 参考链接 OpenResty 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web »

#Lua:Lua调用C++生成的DLL库

Lua调用C++生成的DLL库 本文参考了某大佬的博客,写得十分详细,推荐!!! 需求: 在之前的求解器中添加了Lua库,使得程序可以在Lua脚本中实现自定义函数功能,考虑到未来可能需要与第三方程序库进行耦合计算,现在想到可以借助Lua脚本,在脚本中调用第三方动态库,以实现其功能的扩展。接下来将要简 ... »

Lua脚本在Redis事务中的应用实践

使用过Redis事务的应该清楚,Redis事务实现是通过打包多条命令,单独的隔离操作,事务中的所有命令都会按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。事务中的命令要么全部被执行,要么全部都不执行(原子操作)。但其中有命令因业务原因执行失败并不会阻断后续命令的执行,且也无... ... »

Lua CallbackHell优化

在异步操作中,常常要使用回调。但是,回调的嵌套常常会导致逻辑混乱,一步错步步错,难以维护。在Lua中,可以使用协程进行优化。 ... »

hggzhang

Lua 支持虚函数的解决方案

lua本身没有提供类似C++虚函数机制,调用的父类方法调用虚函数可能会出现问题。本文分析lua使用虚函数的问题,并给出一个可行的解决方案。 ... »

hggzhang

Redis 定长队列的探索和实践

vivo 互联网服务器团队 - Wang Zhi 一、业务背景 从技术的角度来说,技术方案的选型都是受限于实际的业务场景,都以解决实际业务场景为目标。 在我们的实际业务场景中,需要以游戏的维度收集和上报行为数据,考虑数据的量级,执行尽最大努力交付且允许数据的部分丢弃。 数据上报支持游戏的维度的批量上 ... »

vivotech

lua 调用C函数

#include "tolua_fix.h" #include "WordFilter.h" #include "LuaBasicConversions.h" #include "lua_sensitive_binding.h" int lua_sensitive_loadfile(lua_State* tolua_S) { size_t sz = 0; const char * »

Lua的string库函数、lua中string的模式匹配

--****************Lua的string库函数****************** --1.string.byte --string.byte (s [, i [, j]]) --取出字符串中的字节.i是起始位置,j是结束位置. --解析协议的时候经常用来将字符串中的某几个字节取出,然后重新组装为一个多字节的数字. --2.str »

Lua1

使用lua进行脚本编程有很多优点: 1 代码体积小 2 执行速度快 3 安全性较高等 4 但是最大的优点是修改后的代码不需要重新编译即可生效,而高级语言的代码经过修改后需要经过重新编译或者解释后才能生效。   lua主要用于游戏应用层的开发。由于游戏上层的逻辑会而经常发生变化,比如游戏的任务系统或者活动系统。 我们可以设想一下,如果每次都要修改我们所用的C#代码重新编译,那么玩家根本就无法进行游戏 »

Lua require搜索路径指定方法

在自己的lua文件中,如果使用到了自己写的C库或者第三方库,想让lua编译到自己指定的目录下寻找*.lua或*。so文件的时候,可以再自己的Lua代码中添加如下代码,可以指定require搜索的路径。      package.path = '/usr/local/share/lua/5.1/?.lua;/home/resty/?.lua;'    --搜索lua模块    package.cpa »

第1课 - 学习 Lua 的意义

第1课 - 学习 Lua 的意义 1.Lua 简介             (1) 1993年、巴西 (2) 小巧精致的脚本语言,大小只有 200K (3) 用标准C语言写成,能够在所有的平台上编译运行 (4) 发明的目标是嵌入在C/C++中,为应用程序提供灵活的扩展和定制功能 (5) 不适合用于开发独立的应用程序 2.Lua 产生的原因     C/C++ 工程中有大量的业务逻辑,而业务逻辑经 »

lua:使用Lua处理游戏数据

在之前lua学习:lua作配置文件里,我们学会了用lua作配置文件。 其实lua在游戏开发中可以作为一个强大的保存、载入游戏数据的工具。   比如说,现在我有一份表单: data.xls 用什么工具解析这个Excel文件并将数据载入游戏? 我们可以使用Lua来完成这个工作。不过要先将表单保存为csv文件(数值用逗号隔开的文件)。 从表单中,我们可以得知第一行是键名,剩下的行是数值。我们可以用下 »

lua中self.__index = self是什么意思?

example1 Account = {balance = 0} function Account:new(conf) conf = conf or {} setmetatable(conf,self) self.__index = self return conf end Account模拟一个对象,new方法类似于实例化一个对象,conf可存放一些初始值 »

<转>windows下编译lua源码

因为之前一直使用 lua for windows 来搭建lua的使用环境,但是最新的 lua for windows 还没有lua5.2,我又想用这个版本的lua,所以被逼无奈只能自己编一下lua源码。 首先从 lua的官网 下载你想要使用的lua源码,比如我下载的就是lua5.2。解压后内容如下: 所有的lua源码都放在了 src 文件夹下,当然,不同的lua版本目录结构有可能不一样,但是都会 »

给lua_close实现回调函数

先讲下为什么会需要lua_close回调吧。 我用C++给lua写过不少库,其中有一些,是C++依赖堆内存,并且是每一个lua对象使用一块单独的内存来使用的。 在之前,我一直都是魔改lua源代码,给lua_State结构添加新的成员来进行快速引用,并修改了lua_close的源代码,添加了回调函数,使lua在对象关闭时顺便把C++分配的内存也回收掉。 然而随着有相同需求的库不断增多,我随时需要调整 »

lua接收图片并进行md5处理

需要luacurl(http://luacurl.luaforge.net/)和MD5两个库函数 curl = require(&quot;luacurl&quot;) require(&quot;md5&quot;) -- 下载图片 function get_img(url, c) local result = {} if c == nil then c = curl.new() end »

Lua 计算两个GPS坐标点之间的距离

local EARTH_RADIUS = 6378.137local function rad(d)  return d * math.pi / 180.0end local function getDistance(lat1,lng1,lat2,lng2)   local radLat1 = rad(lat1)   local radLat2 = rad(lat2)   local a = »