各行各业

第二人生的源码分析(三十四)读取通讯的消息模板

在开发通讯的软件里,要让通讯的两端程序相互对话,其实就跟人与人的交流是一样的,要使用共同语言,而不能一个人说英语,一个人说汉语。由于通讯两端是分别在不同的程序里,那么就需要定出一套相互认同的语言—协议定义。而定义协议的办法有很多种,比如直接写成C结构,这样的方式最直接了,但它有点不灵活。又有采用XML的方式,这样虽然灵活了,但它的通讯消息大小又太大了,不便于传送,对于中国慢慢网络来说,又太不现实。像QQ那么短的消息结构,发送的速度那么快才是真正地适应中国的

系统 2019-08-12 01:32:53 2455

各行各业

DIRECTORY_SEPARATOR的作用

DIRECTORY_SEPARATOR是php的内部常量,用于显示系统分隔符的命令,不须要不论什么定义与包括就可以直接使用。在windows下路径分隔符是/(当然/在部分系统上也是能够正常执行的),在linux上路径的分隔符是/,这就导致了一个问题,比方开发机器是windows,有一个图片上传程序,调试机器上指定的上传文件保存文件夹是:define('ROOT',dirname(__FILE__)."/upload");在本地调试都非常正常,可是上传到li

系统 2019-08-12 01:32:47 2455

各行各业

RabbitMQ的工作队列和路由

RabbitMQ的工作队列和路由工作队列:WorkingQueue工作队列这个概念与简单的发送/接收消息的区别就是:接收方接收到消息后,可能需要花费更长的时间来处理消息,这个过程就叫一个Work/Task。几个概念分配:多个接收端接收同一个Queue时,如何分配?消息确认:Server端如何确定接收方的Work已经对消息进行了完整的处理?消息持久化:发送方、服务端Queue如何对未处理的消息进行磁盘持久化?Round-robin分配多个接收端接收同一个Qu

系统 2019-08-12 01:32:43 2455

各行各业

about the installer

Firstly,Idescriptthefunctionstepsinstaller.Wemustchecklisenceisinstalledbeforetheinstallationofapplication.iflisenceissetuptheninstalltheapplicationdirectly.iflisenceisn’tsetupthenlisencewillinstallbeforetheapplicationautomaticall

系统 2019-08-12 09:26:54 2454

各行各业

luacom打开中文路径的Word文件

背景luacom是一个非常强大的模块,它使我们可以应用各种com组件,比如Word,但是,有一个问题,中文文件名它不识别。为什么呢?因为com内部是unicode的,于是luacom要求所有输入都是utf-8的,而且luacom的输出也是utf-8的。这可肿么办啊?iconvGNU有个libiconv库,要是有这个我们就不怕了!luaforge上搜索下,果然有lua-iconv,安装!luarocksinstalllua-iconv不好意思,出错啦!出错的

系统 2019-08-12 09:26:54 2454

各行各业

应对轻度修改部署问题

应对简单页面修改部署问题为什么写这篇文章:在我维护网站的过程中,当我修改了部分界面的时候,我会重新编译,全部文件上传,我在想能不能只上传修改的文件其他文件不动;问题来了,出现分析器错误;随后我就查到解决的问题,一下就是解决的办法,希望让那些新手少走弯路!本文不涉及网站如何部署。系统介绍:XP+II5+VS2008发布方式选项:(1)只选择->允许更新此预编译站点(2)选择->允许更新此预编译站点+使用固定命名和单页程序集;接下分别讲解两种不同方式在应对.C

系统 2019-08-12 01:33:28 2454

各行各业

第二人生的源码分析(103)脚本的词法分析(1)

从前面的脚本可以看到它的代码,也理解它的意思了,但是它是怎么样执行的呢?又是怎么样变成可执行的脚本呢?下面就来分析这部份相关的代码。要了解脚本执行,就得把脚本中的每一个单词识别出来,如下:default{state_entry(){llSay(0,“Hello,Avatar!”);}touch_start(integertotal_number){llSay(0,“Touched.”);}}把上面的脚本识别为下面的字符串流:default{state_en

系统 2019-08-12 01:32:42 2454

各行各业

标志位介绍

一、运算结果标志位1、进位标志CF(CarryFlag)进位标志CF主要用来反映运算是否产生进位或借位。如果运算结果的最高位产生了一个进位或借位,那么,其值为1,否则其值为0。使用该标志位的情况有:多字(字节)数的加减运算,无符号数的大小比较运算,移位操作,字(字节)之间移位,专门改变CF值的指令等。2、奇偶标志PF(ParityFlag)奇偶标志PF用于反映运算结果中“1”的个数的奇偶性。如果“1”的个数为偶数,则PF的值为1,否则其值为0。利用PF可进

系统 2019-08-12 09:27:39 2453

各行各业

YII2,添加FontAwesome

一、初始化项目通过Composer来初始化composercreate-project--prefer-distyiisoft/yii2-app-basicmyapp(或使用phpcomposer.pharcreate-project--prefer-distyiisoft/yii2-app-basicmyapp二、安装FontAwesome仍然通过Composer来安装。搜索packagist.org官方的包列表,我们找到了FontAwesome的配置。

系统 2019-08-12 09:27:05 2453

各行各业

jq 使用手册

翻译整理:Young.J官方网站:http://jquery.comjQuery是一款同prototype一样优秀js开发库类,特别是对css和XPath的支持,使我们写js变得更加方便!如果你不是个js高手又想写出优秀的js效果,jQuery可以帮你达到目的!下载地址:Starterkit(http://jquery.bassistance.de/jquery-starterkit.zip)jQueryDownloads(http://jquery.co

系统 2019-08-12 09:26:50 2453

各行各业

Subclipse 1.8.20 发布,Eclipse 的 SVN 插件

Subclipse1.8.20发布了,完整的改进内容请看:http://subclipse.tigris.org/subclipse_1.8.x/changes.htmlSubclipse是一个为EclipseIDE添加Subversion支持的项目。支持几乎所有版本的Eclipse。Eclipse的更新地址是:http://subclipse.tigris.org/update_1.6.xhttp://subclipse.tigris.org/updat

系统 2019-08-12 01:31:44 2453

各行各业

创建带sshd服务的docker image

参考:https://docs.docker.com/examples/running_ssh_service/1.创建一个空目录用于存放Dockerfilemkdir-p/home/thm/docker/test/new_imagevimDockerfileDockerfile的内容为:FROMtanghuimin0713/ubuntu_amd64:14.04RUNapt-getupdateRUNapt-getinstall-yopenssh-serve

系统 2019-08-12 09:27:09 2452

各行各业

第二人生的源码分析(六十七)LLXMLNode使用Expat

前面介绍了什么是expat库,也介绍怎么使用它来打开XML文件进行分析,接着下来就来分析第二人生里是怎么样使用它。详细的函数代码如下:#001//static#002boolLLXMLNode::parseFile(#003LLStringfilename,#004LLXMLNodePtr&node,#005LLXMLNode*defaults_tree)#006{下面开始调用文件函数打开文件。#007//Readfile#008FILE*fp=LLFil

系统 2019-08-12 01:32:07 2451

各行各业

GlusterFS之内存池(mem-pool)使用实例分析

我的新浪微博:http://weibo.com/freshairbrucewoo。欢迎大家相互交流,共同提高技术。上一篇博客详细分析了GlusterFS之内存池的实现技术,今天我们看看GlusterFS是怎么使用这个技术的。第一步:分配和初始化:cli进程在初始化的过程中会涉及到内存池的建立和初始化,具体涉及到内存池初始化的代码如下(在cli.c文件中的glusterfs_ctx_defaults_init函数):1/*frame_mem_poolsize

系统 2019-08-12 01:31:41 2451

各行各业

2003下安装Comodo pro (通用)

我喜欢2003,也喜欢comodo,但是comodo却无法安装在xp下,于是写了一个小工具让comodo安装程序能在2003下安装原理也很简单,注入一个DLL到安装文件exe里面,hook掉GetVersion和GetVersionW然后修改相应数值为xp的数值这样就可以在2003下安装comodo了,附上工具下载/Files/lifeengines/wlloader.rar使用方法:将工具解压到与comodo安装文件相同目录,修改comodo安装文件名字

系统 2019-08-12 09:27:36 2449