[写在前面:写这篇文章只是为了方便自己以后查阅Lua的基础知识,并无深刻见解,完全参考《Lua程序设计(第二版)》]一、函数基础 1.函数定义 (1)标准形式:f = function(<参数>) <函数体> end (2)语法糖形式:function f(<参数>) <函数体> end 2.函数调用 (1)一般形
转载
2024-02-27 18:01:05
165阅读
帧同步,帧同步是什么意思 在数字通信时,一般总是以一定数目的码元组成一个个的“字”或“句”,即组成一个个的“群”进行传输的。因此,群同步信号的频率很容易由位同步信号经分频而得出。但是,每个群的开头和末尾时刻却无法由分频器的输出决定。群同步的任务就是在位同步信息的基础上,识别出数字信息群(“字”或“句”)的起止时刻,或者说给出每个群的“开头”和“末尾”时刻。 群同步有时也称为帧同步。为了实现群同步,
transition.lua主要是动作相关的操作。 --------------------------------
-- @module transition
--[[--
为图像创造效果
]]
local transition = {}
local ACTION_EASING = {}
ACTION_EASING["BACKIN"] = {
转载
2024-10-11 20:45:43
46阅读
1. chunk(代码块),可以是一条语句,也可以是一系列语句的集合,还可以是函数。 chunk拥有独立的"词法域",意味着chunk内部声明的局部变量和局部函数,仅在该chunk内可见。 chunk的定义方式主要有以下几种:
转载
2024-09-14 22:04:50
31阅读
1、利用ping命令实现延时,方法巧妙而且可以控制,但精度不高。 如:ping -n 3 127.0.0.1>nul大约可以停顿2秒 -n后的数字是发送包的数目,为暂停秒数加一。此法每秒有0.5%的偏差,时间精度为1秒。 2、用vbs脚本中的sleep实现,样本代码如下: --------------------------------------
复制代码
1.等待线程退出: 线程从入口点函数自然返回,或者主动调用pthread_exit()函数,都可以让线程正常终止。 线程从入口点函数自然返回时,函数返回值可以被其它线程用pthread_join函数获取。pthread_join原型为:
Lua学习(三)协同程序 目录Lua学习(三)协同程序前言一、协同程序的四种状态二、Resume函数1.参数2.返回值三、yiled函数返回值四、协同程序结束,主函数返回值总结 前言 Lua将所有关于协同程序的函数放置在一个名为coroutine的table中,函数 create用于创建新的协同程序,它
转载
2024-05-30 13:23:13
93阅读
物理帧和渲染帧分开,目的就是确保 逻辑的 同步性,ab两个客户端 pk,手机性能不一样,虽然服务端同时发送,但不能因为a手机配置低,卡了,导致跟不上。虽然 做了跳帧处理,但加速 不一定要让渲染帧也加速,否则 手机 性能更不上,还是卡。所以必须让 逻辑渲染分开。逻辑帧 一秒 6--10次,渲染帧 一
转载
2024-03-22 12:10:18
313阅读
前言提到lua,就不得不提协程coroutine。coroutine是lua的一种内在机制,为lua提供了原生的异步支持。从用户层面来看,用户不需关心coroutine的内在实现,而只需要用coroutine调度function即可,因此非常方便。对于一个function而言,coroutine可以将function的代码分片,使得一个function可以分阶段运行。在实现上,function的状
转载
2024-04-16 21:34:55
331阅读
作者:沈园园 最后修改时间:2021年3月31日 关键词:HTTP,POST,GET 目录http简介API说明实现流程示例执行HTTP请求的回调函数HTTP请求函数常见问题是否支持HTTPS为什么频繁请求会失败为什么POST JSON格式的数据会出现失败数据接收缓存问题 http简介HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写。HTTP是一个应用层协
1、什么是协同程序?在主线程运行的同时开启一段逻辑处理,来协助当前程序的执行。(PS:协程很像多线程,却不是多线程,注意不要混淆)Unity的协程在每帧结束后去检测yield的条件是否满足。2、Unity脚本生命周期:Awake->OnEnable->Start->Update->FixedUpdate->LateUpdate->OnGUI ->OnDis
转载
2024-07-02 01:01:40
233阅读
本文主要转载魏兴华大师在itpub上的一篇帖子log file sycn是ORACLE里最普遍的等待事件之一,一般log file sycn的等待时间都非常短 1-5ms,不会有什么问题,但是一旦出问题,往往都比较难解决。什么时候会产生log file sync等待? 常见有以下几种: 1)commit操作 2)rollback操作 3)DDL操作(DDL操作实施前都会首先进行一次commit)
在中国的游戏环境下,反挂已经成为了游戏开发的重中之重,甚至能决定一款游戏的生死,吃鸡就是一个典型的案例。目前参与了了一款动作射击的MOBA类游戏的开发,同步方案上选择了帧同步技术(LockStep而非snapshots以下同)。那么就有很多人担心起来,客户端会跑全部逻辑帧同步该如何反外挂,和状态同步有什么区别呢?首先我们来分析一下手游的风险和外挂的分类,这里推荐腾讯游戏安全中心的文章,
在前一篇中,我们定义了 FrameManager 来管理场景中所有对象的 Update 函数,在这篇文章中,我们定义一个 MoveManager 类来管理场景中所有移动的对象,因为场景中所有的对象的 Update 函数是由一个 Update 函数驱动的,这样我们可以保证每个移动的对象具有统一的代码执行步伐,即便帧会有卡顿,也能保证场景中的移动对象能在一个 Update 函数中
第5章 Lua、Canal实现广告缓存1. 首页分析首页门户系统需要展示各种各样的广告数据。以京东为例: 页面中的广告一般来说变变更频率较低,对于这种数据该如何进行处理?(1) 第一种方式 如图所示,首页访问广告服务,而广告服务从数据库中查询数据,而后返回给首页进行展示。这种方式最为简单。但是首页的访问量一般非常高,不适合直接通过MySQL数据库直接访问的方式来获取展示。 (2) 第二种方式 1.
线程的各个流程之间转换的关系图:说明 :线程的同步状态主要包含5种状态的转换:1. 初始状态(New) : 也就是线程对象被新建后就进入初始状态。例如,Thread thread = new Thread()。2. 就绪状态(Runnable): 也被称为“可执行状态”。线程对象被创建后,调用该对象的start()方法启动了线程。此
转载
2024-05-31 09:58:58
175阅读
【lua学习】Lua 协同程序(coroutine)什么是协同(coroutine)?Lua 协同程序(coroutine)与线程比较类似:拥有独立的堆栈,独立的局部变量,独立的指令指针,同时又与其它协同程序共享全局变量和其它大部分东西。协同是非常强大的功能,但是用起来也很复杂。线程和协同程序区别线程与协同程序的主要区别在于,一个具有多个线程的程序可以同时运行几个线程,而协同程序却需要彼此协作的运
转载
2024-03-31 07:37:07
53阅读
网络层:为了保证网络的稳定性,选择UDP+KCP协议的协议方式业务层:实现方案:网络游戏同步方案主要有两种:状态同步和帧同步状态同步:顾名思义,是指的将其他玩家的状态行为同步的方式,一帮情况下AI逻辑,技能逻辑,战斗计算都由服务器运算,只是将运算的结果同步给客户端,客户端只需要接受服务器传过来的状态变化,然后更新自己本地的动作状态、Buff状态,位置等就可以了,但是为了给玩家好的体验,减少同步的数
转载
2024-03-28 11:38:57
117阅读
IO模型简介# 我们这里研究的IO模型都是针对网络IO
Stevens在文章中一共比较了五种IO Model:
* blocking IO 阻塞IO
* nonblocking IO 非阻塞IO
* IO multiplexing IO多路复用
* asynchronous IO 异步IO
* signal drive
前言本文主要讲解 lua 协程的基本使用,和它在 skynet 这个框架中的实际应用。skynet简介可能有的读者学 lua 不是做游戏服务器的,没有了解过 skynet,简单介绍下,skynet 是 云风 大神开发的开源服务器引擎,应用于当下众多的游戏公司的服务器框架。lua协程是什么从多线程(multithreading)的角度看,协程(coroutine)与线程(thread)类似:协程是一
转载
2024-05-05 17:58:28
63阅读