lua专题

Java使用ANTLR4对Lua脚本语法校验详解

《Java使用ANTLR4对Lua脚本语法校验详解》ANTLR是一个强大的解析器生成器,用于读取、处理、执行或翻译结构化文本或二进制文件,下面就跟随小编一起看看Java如何使用ANTLR4对Lua脚本... 目录什么是ANTLR?第一个例子ANTLR4 的工作流程Lua脚本语法校验准备一个Lua Gramm

redis+lua实现分布式限流的示例

《redis+lua实现分布式限流的示例》本文主要介绍了redis+lua实现分布式限流的示例,可以实现复杂的限流逻辑,如滑动窗口限流,并且避免了多步操作导致的并发问题,具有一定的参考价值,感兴趣的可... 目录为什么使用Redis+Lua实现分布式限流使用ZSET也可以实现限流,为什么选择lua的方式实现

Lua 脚本在 Redis 中执行时的原子性以及与redis的事务的区别

在 Redis 中,Lua 脚本具有原子性是因为 Redis 保证在执行脚本时,脚本中的所有操作都会被当作一个不可分割的整体。具体来说,Redis 使用单线程的执行模型来处理命令,因此当 Lua 脚本在 Redis 中执行时,不会有其他命令打断脚本的执行过程。脚本中的所有操作都将连续执行,直到脚本执行完成后,Redis 才会继续处理其他客户端的请求。 Lua 脚本在 Redis 中原子性的原因

由Lua 粘合的Nginx生态环境

转自:http://blog-zq-org.qiniucdn.com/pyblosxom/oss/openresty-intro-2012-03-06-01-13.html -- agentzh tech-club.org 演讲听录 免责聲明 Lua 粘合的 Nginx 生态环境 2.1. openresty 2.2. 配置小语言 2.3. ngx_drizzle 2.4.

Debugging Lua Project created in Cocos Code IDE creates “Waiting for debugger to connect” in Win-7

转自 I Installed Cocos Code IDE and created a new Lua Project. When Debugging the Project(F11) the game window pops up and gives me the message waiting for debugger to connect and then freezes. Also a

Docker+FastDFS+Lua搭建文件服务器进阶版

使用FastDFS+Nginx+Lua+GraphicsMagick搭建类似淘宝的图片服务器 1、FastDFS安装1.1、镜像下载1.2、开启tracker容器1.3、开启storage容器1.4、测试 2、FastDFS集成Nginx+lua+GraphicsMagick2.1、依赖包下载2.2、安装软件基础包2.3、依赖安装2.4、配置Lua脚本实现图片缩略图2.5、修改nginx.c

【Unity-Lua】音乐播放器循环滚动播放音乐名

前言:Unity中UI节点 图1 如上所示,一开始本来是打算用ScrollView做的,觉得直接计算对应的文本位置就行,所以没用ScrollRect来做,可以忽略Scroll,Viewport这些名字。如下图:需要在一个背景Image组件上添加上Mask组件来显示固定位置的文本显示。 图2 图3 并且需要在要显示的文本上挂载Content Size Filter组件,但是这儿会有个坑

lua data time

local getTime = os.date(“%c”); 其中的%c可以是以下的一种:(注意大小写) %a abbreviated weekday name (e.g., Wed) %A full weekday name (e.g., Wednesday) %b abbreviated month name (e.g., Sep) %B full month name (e.g., Sep

arm linux lua移植

lua: lua home 1.下载lua源码 lua下载 lua-5.3.4.tar.gz 2.解压: tar xvf lua-5.3.4.tar.gz 3.修改makefile and luaconf.h $修改 lua-5.3.4/Makefile #INSTALL_TOP= /usr/local INSTALL_TOP= $(shell pwd)/out #修改安装目录(当前目录/o

如何使用 Lua 脚本进行更复杂的网络请求,比如 POST 请求?

在当今的互联网世界中,网络请求是数据交换的基础。无论是在开发Web应用程序、自动化测试还是进行数据抓取,掌握如何发送网络请求是一项基本技能。Lua,作为一种轻量级、高性能的脚本语言,经常被用于这些场景。本文将详细介绍如何使用Lua脚本进行更复杂的网络请求,特别是POST请求。 Lua脚本在网络请求中的优势 Lua脚本因其简单性和灵活性,非常适合用于编写网络请求。以下是使用Lua进行网络请求

Lua调用C#协程

核心就是先require("xlua.util") 然后就可以通过cs_generator函数将方法传入 例如:mono:StartCoroutine(util.cs_generator(fun)) print("*********Lua调用C# 协程相关知识点***********")--xlua提供的一个工具表--一定是要通过require调用之后 才能用util = requir

新文章 - Lua中的ipair 和 pair的区别 / table

参考博客:  https://blog.csdn.net/W_han__/article/details/51376615 (https://blog.csdn.net/heyuchang666/article/details/51003492)  参考博客:  https://www.jianshu.com/p/4db84cf0d61a(初探 lua 的唯一数据结构 table) ----

lua 123.lua出错

http://www.cnblogs.com/whiteyun/category/203591.html --- 推荐CSDN

Lua 函数的尾调

解释: Max=25 时,为啥 会等很长时间 才出来, 如果Max更大  --- 崩了 而第二种情况: 就不会那 2.3申请大小的限制  栈:在Windows下,栈是向低地址扩展的数据结构,是一块连续的内存的区域。这句话的意思是栈顶的地址和栈的最大容量是系统预先规定好的,在WINDOWS下,栈的大小是2M(也有的说是1M,总之是一个编译时就确定的常数),如果申请的空间超过栈的剩余空间

Cocos2d+Lua 游戏开发中的技巧系列之一 Lua require的语法糖

参考文档  --- https://blog.csdn.net/lovesmiles/article/details/80939240 笔记: Lua/JS尾调用   http://www.ruanyifeng.com/blog/2015/04/tail-call.html Lua的闭包详解   (和JS一吊样) Lua中的元表与元方法(_index与_newIndex区别) https:/

lua网络处理+pomelo搭建

1: 了解linux命令行 linux 命令行: 1:  linux下,目录中的"~"符号代表什么意思?     ~ 代表当前用户的主目录 比如: 如果你是root登陆,那么他的家目录就是/root,在提示符里面显示的就是[root@localhost ~]# 如果你是普通用户user登陆,那么他的家目录就是/home/user,在提示符里面显示的就是[user@localho

新版本 Redline 使用 Lua 字节码逃避检测

近日,研究人员观察到 Redline Stealer 木马的新变种,开始利用 Lua 字节码逃避检测。 遥测分布 根据遥测数据,Redline Stealer 木马已经日渐流行,覆盖北美洲、南美洲、欧洲和亚洲甚至大洋洲。 感染链 感染链 微软官方账户的 vcpky 仓库被攻击者滥用部署了恶意文件,恶意 URL 为 https[:]//github[.]com/micros

Lua基础之弱引用

简述 一个table可以通过元表的__mode字段设置成弱引用模式,一般来说由三个模式: key是弱引用value是弱引用key和value都是弱引用 -- 设置a为key弱引用a = {}b = {__mode = "k"}setmetatable(a, b)-- 设置a为value弱引用a = {}b = {__mode = "v"}setmetatable(a, b)--

Lua基础之运行环境搭建

1. 下载 下载地址:http://www.lua.org/         可以直接下载已编译好的编译器、解释器和库文件(即Release版本),如图 也可以下载源码进行编译,源码的好处是我们可以看到底层的实现逻辑,然后进行改造和优化。   2. 编译 当文件下载完成后,源码位于/src里面,如图,   1. 打开Visual Studio,新建Win32

Lua基础之模块与require

模块 Lua可以利用table实现模块加载 方法: 从require传入的参数中获取模块名或直接自定义变量名;初始化一个空table;在全局环境_G中添加模块名对应的字段,将空table赋值给这个字段;在package.loaded中设置该模块;设置环境变量。 例如: local moduleName = ... -- 模块名,可以在这里直接指定local M = {}

Lua基础之dofile、loadfile、require的区别

loadfile 特点:只编译,不运行。 一个lua文件是作为一个代码块(chunk)存在的,其实质就是一个函数,loadfile编译代码成中间码并且返回编译后的chunk作为一个函数,而不执行代码 ,并且loadfile一旦出错不会抛出错误信息而是返回错误代号。一旦发生错误,loadfile会返回nil和错误信息,这样我们就可以自定义错误处理。 想要通过loadfile加载并执行,可

Lua基础之环境

全局环境:Lua将其所有的全局变量保存在一个常规的table中组成全局环境,并通过全局变量_G进行引用。这种组织结构的优点在于可以像操作其他table一样操作这个table。有时我们想操作一个全局变量,而它的名称却存储在另一个变量中,或者需要通过运行时的计算才能得到,可以通过value = _G[varname]来获得动态名字的全局变量。 函数环境:Lua中的函数环境就是函数在执行时所见的

Lua io.write(“\27[2J”)

Programming in Lua 第六章 More About Function 开头有一个例子。它在终端屏幕上输出一个用*号组成的正弦曲线: function eraseTerminal()io.write("\27[2J")end-- writes an `*' at column `x' , row `y'function mark (x,y)io.write(stri

lua一些排序,后续继续添加

目录 冒泡排序简单选择排序 冒泡排序 --- 打印tablefunction printTB(tb)print("打印tb", table.concat( tb, ", "))end--- 冒泡排序local tbArray = {3,5,7,34,1,78,77,23,-10,33,73,2345,45}function buddle_sort(tbArray)loca