一.前言我们都知道Nginx有很多的特性和好处,但是在Nginx上开发成了一个难题,Nginx模块需要用C开发,而且必须符合一系列复杂的规则,最重要的用C开发模块必须要熟悉Nginx的源代码,使得开发者对其望而生畏。为了开发人员方便,所以接下来我们要介绍一种整合了Nginx和lua的框架,那就是OpenResty,它帮我们实现了可以用lua的规范开发,实现各种业务,并且帮我们弄清楚各个模块的编译顺
转载 2024-04-25 14:25:01
115阅读
一、前言openresty也有nginx的路由功能,并且比nginx更全面,支持lua语言。之前,本人想用nginx打印请求头(request_header)的日志,但是发现nginx只能打印请求体(request_body),死活没有找到怎么打印请求头;网上的打印方法,都是用openresty的(需要lua)。所以在此总结下openresty安装方法。二、安装方法1.先网上找一个压缩包,例如op
转载 2024-03-18 20:22:42
86阅读
由于cocosBuilder几乎包办了游戏界面的编程,所以自己在上一版cocos2dx中(还没在lua中对cocosbuilder进行集成),我就自己实现了套集成方案,一直想写出来,但是由于改动了lib中的代码,解释起来也不那么容易,所以一直耽搁了;刚刚发布的新版本中,cocos2dx增加了这样的支持,试用了一下,发现比较ok,特意写下这片文章,
【前言】在《Lua“控制”C》中对Lua调用C函数做了初步的学习,而这篇才是重中之重,这篇文章会重点的总结C模块编写过程中遇到的一些问题,比如数组操作、字符串操作和C函数的状态保存等问题。现在就开始吧。【数组操作】在Lua中应该不能叫数组,而是一种table的东西;而在C语言中,没有table这种东西,只有数组。Lua中的table可以使关联的,也就是key=>value键值对,而C中,数组
        单纯的说openresty开发的话,网上已经有了相当成熟的教程。因此笔者就不多此一举,本篇就写一些关于初学者才到的一些坑。 1、项目结构介绍         当openresty安装完成之后,目录如下:       
转载 2024-04-29 20:09:54
215阅读
汇编之串处理指令前言串处理指令与REP相配合的串传送指令REPMOVS格式执行的操作串操作的准备工作带重复前缀的串传送指令例STOSLODS从串取指令串比较指令REPE/REPZ 当相等/为零时重复串操作REPNE/REPNZ 当不相等/不为零时重复串操作CMPS 串比较指令SCAS 串扫描指令例题前言串处理指令一般与REP指令配合。 因为串操作指令其实只是对 “串”主要就体现在REP上 REP是
转载 1月前
366阅读
【2】Lua基本的函数和控制结构   【1】使用Lua (1)创建函数   hello=function() print("Hello World") return 99 end print(hello()) (2)局部函数  语法
#### 通过前面几章,我们已经掌握了一些基本的开发知识,但是代码结构比较简单,缺乏统一的标准,模块化,也缺乏统一的异常处理,这一章我们主要来学习如何封装一个轻量级的MVC框架,规范以及简化开发,并且提供类似php所见即所得的能力 ## 统一入口 通常来说一个mvc框架会有一个统一的入口点,类似于spring mvc的DispatcherServlet
转载 2024-09-04 23:01:16
34阅读
自定义数据类型: 我们通过使用C语言实现一个Lua数组来演示Lua实现自定义用户数据。数组的结构如下所示:typedef struct NumArray{ int size; //表示数组的大小 double values[]; //此处的values仅代表一个double*类型的指针,values指向NumArray结构后部紧跟的数据的地址 }
转载 2024-05-11 10:59:29
120阅读
这次我们来介绍下openfire提供的可选插件,方便大家在开发中使用。openfire插件下载地址:http://www.igniterealtime.org/projects/openfire/plugins.jsp使用插件时大家请一定要注意插件支持的openfire版本,不要搞错了,否则是不能运行的。 Broadcast   最新版本 1.8.2   广播消息插件
【1、最基本的弹出窗口代码】  复制代码 <SCRIPT LANGUAGE="javascript"> <!-- window.open ('page.html') --> </SCRIPT> 因为着是一段javascripts代码,所以它们应该放在<SCRIPT LANGUAGE="java
lua是一个内嵌式的语言,很多初学者对于lua中使用c++类中的函数,或者用c++直接创建一个自己的自定义数据类型比较头疼,因为这部分确实比较乱,牵扯到内存释放分配等问题,但是如果把其中关系理清,还是很简单的,下面这段代码是一个老外写的,我做了一些修改。首先看代码。 #ifndef LUNA_H #define LUNA_H 1 /**************************
如果是一个 *.LUA 的文件, 里面用到了自己写的库, 或者第三方写的库, 但是你不想把它放
原创 2023-07-11 16:48:53
261阅读
<img src="https://picabstract-preview-ftn.weiyun.com/ftn_pic_abs_v3/6d212114dda5a3
原创 2022-09-22 11:49:32
130阅读
一、自定义模块与使用python模块说明:类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合。而对于一个复杂的功能来,可能需要多个函数才能完成(函数又可以在不同的.py文件中),多个 .py 文件组成的代码集合就称为模块模块分三种:内置模块第三方模块自定义模块开始自定义模块:1.创建模块自定义模块可以是单个以.py结尾的文件,也是可以
转载 2023-07-03 02:43:23
104阅读
模块的分类:第一类: 内置模块,也叫标准库.次来模块是Python解释器提供的,比如time,os模块.标准库模块有200多种.第二类: 第三方模块,第三方库. 一些Python大神写的非常好用的模块,必须通过pip install指令安装模块.比如BeautifulSoup , Django等.大概有6000多种.第三类: 自定义模块. 自己在项目中定义的一些模块6.1 自定义模块1) impo
 Sysbench工具是集系统测试和数据库测试一体的测试工具,但是传统的sysbench在数据库测试方面,没有遵循TPC-C测试模型,仅仅支持单个表的数据。而在实际的业务场景中,业务逻辑复杂的多。开源的优势就是,会有很多人参与进来,共同完善。Sysbench目前支持多个表的压测,并且通过自定义lua业务测试模型,使得测试更符合业务场景。  sysbench支持以下几种测试模式:1、CPU
关于cocos2d-x下Lua调用C++的文档看了不少,但没有一篇真正把这事给讲明白了,我自己也是个初学者,摸索了半天,总结如下:cocos2d-x下Lua调用C++这事之所以看起来这么复杂、网上所有的文档都没讲清楚,是因为存在5个层面的知识点:1、在纯C环境下,把C函数注册进Lua环境,理解Lua和C之间可以互相调用的本质 2、在cocos2d-x项目里,把纯C函数注册进Lua环境,理解coco
转载 2024-06-12 22:02:48
34阅读
提到内存优化,就会想到内存缓存,而提到内存缓存就必须得提到android提供的Lru缓存方案,它的核心就是LruCache类,因此,从源码的角度去看看它的工作原理。在android3.1.x(API 12)之前,我们用到的是android.util包下的LruCache,在此之后,我们可以用android.support.v4.util包下的LruChache,其实这两个包下的LruCache代码
效果实现一个自定义的TableLayer,该Layer具有以下特性TableLayer可以在create的时候可以设置表格的行数和列数TableLayer具有一个addCell方法可以添加CCNode对象到表格TableLayer可以自动对表格中的CCNode对象进行排列TableLayer的addCell方法添加12个宽和高相同的CCNode对象,它们的添加顺序和位置如下图所示:  &
  • 1
  • 2
  • 3
  • 4
  • 5