lua学习记述二

lua学习记述二

bingliaolong 1年前 6 0

嵌入Lua的好处 分离逻辑和引擎 引擎负责渲染、物理模拟、音频处理等底层功能,而Lua脚本处理游戏逻辑和UI 这样可以让不同的团队成员专注于不同的部分 增强扩展性 游戏发布后,开发团队可以通过Lua脚本轻松地发布更新和扩展包,添加新的关卡、角色和任务,而不需要重新编译和发布整个游...

【微信小程序】关于渲染的认识

【微信小程序】关于渲染的认识

bingliaolong 1年前 8 0

结构 index car.png index.js index.json index.wxml index.wxss app.js app.json app.wxss index.js app是获取到的全局的应用程序实例 这里虽然没用到,但是它确保了应用程序实例被正确获取了 ja...

【微信小程序】介绍文档

【微信小程序】介绍文档 2

bingliaolong 1年前 3 0

区别 小程序的主要开发语言是 JavaScript ,小程序的开发同普通的网页开发相比有很大的相似性 网页开发渲染线程和脚本线程是互斥的,这也是为什么长时间的脚本运行可能会导致页面失去响应 小程序中,二者是分开的,分别运行在不同的线程中 网页开发者可以使用到各种浏览器暴露出来的 ...

Objective-C学习记述二

Objective-C学习记述二

bingliaolong 1年前 9 0

发消息 概述 oc里面的发消息,实际上就是在调用那个对象的一个方法。 但是,这种方式与其他语言中的“函数调用”或“方法调用”有所不同。 Objective-C 使用了一个叫做“消息传递”(message passing)的机制。 实例: 在 Objective-C 中,这种语法 ...

Objective-C学习记述一

Objective-C学习记述一

bingliaolong 1年前 16 0

可变不可变基础对象 在Objective-C中,有很多基础对象都有可变和不可变两种版本: 不可变: NSString: 代表不可变的文本字符串。 NSArray: 代表不可变的对象数组。 NSDictionary: 代表不可变的键值对集合。 NSData: 代表不可变的字节缓冲区...

C++并发编程 _ 无锁数据结构

C++并发编程 _ 无锁数据结构

bingliaolong 1年前 9 0

自旋锁 用ATOMIC_FLAG_INIT进行了flag的初始化 它确保了flag的初始状态是清除(或说“未设置”)状态 lock调用了test_and_set方法来试图获取锁 test_and_set会检查flag的当前值:如果flag是清除状态,则设置它并返回false;如果...

包管理器:设计与实现

包管理器:设计与实现

bingliaolong 1年前 12 0

背景 管理器用于管理多个任务 接入了管理器的模块,会根据自己要做的事情,来生成不同的任务 而这些任务的生成,是由接入了管理器的模块,通过一些重要的数据(比如目标数据包的编号,以及目标所在的位置,要求管理器执行的任务类型),来让管理器生成的不同的任务,并添加到任务队列中 目前的设计...

包管理器:各平台安装卸载相关记述

包管理器:各平台安装卸载相关记述

bingliaolong 1年前 20 0

Windows 安装 为了确定安装目标,在安装前后调用了get_reg_items get_reg_items 上买的Windows实现是通过枚举注册表 把几个目标路径的注册表存到一起 然后根据安装前后这些路径下的注册表的项数,来找出新增的那个 通过比较,确定新增项,然后记录下新...

Zlib记述:一

Zlib记述:一

bingliaolong 1年前 15 0

概述 zlib库是一个广泛使用的压缩/解压缩库 下面实现是用了zlib 1.3版本的代码和相关库 具体是使用了zlib源码中带的minizip 其中的minizip扩展提供了处理ZIP文件的功能 解压 在解压之前可能需要处理其他的很多工作,比如验证目录,验证目标文件是否存在等。这...

Spdlog记述:四

Spdlog记述:四

bingliaolong 1年前 9 0

线程池 创建线程池方法一 调用async_factory_impl::create创建线程池 但是这个函数实际作用是用于创建一个记录器 由于需要一个线程池对象参数,所以在创建记录器之前做了个检查,如果还不存在线程池,就先创建线程池,再构造记录器 这里使用递归锁的原因可能是为了使代...

扫一扫二维码分享