自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 资源 (6)
  • 收藏
  • 关注

原创 go实现一个简单的游戏服务器框架(lotou)多节点

代码仓库在这个什么都流行分布式、大并发的时代,不支持点多节点也太说不过去了。 lotou的多节功能主要是建立在network和core模块之上的。 主要分为slave和master。在lotou的多节点中,有一个master和多个slave组成。因为lotou里面主要是针对服务进行通信,所以只要master和slave的主要功能就是对服务间 的消息进行转发。 基于多节点网络,lotou还实现

2016-12-22 14:30:00 1489

原创 go实现一个简单的游戏服务器框架(lotou)编码

代码仓库在lotou中实现了两种二进制编码方式。binary一种是普通的C/C++模式的小端编码方式,每一个数据都被依次编码进一个二进制流中,基本用法如下:编码 binary.Encode(v) binary.Encode(v)解码 binary.Decode(&v) binary.Decode(&v)使用非常简单,编码方式也很简单。还有一种是为了用于lotou内部通信(后面即将实现的

2016-12-12 14:53:41 1270

原创 go实现一个简单的游戏服务器框架(lotou)网络通信

代码仓库,目前代码比较粗糙,欢迎各种改进建议。 网络通信相关代码请查下以下链接(https://github.com/sydnash/lotou/tree/master/network/tcp)目前网络通信只实现了基于go的tcp的通信。go的tcp相关的主要接口net.JoinHostPort 将一个host和port组成一个合法的网络地址(host:port)net.ResolveTCP

2016-12-09 10:37:44 4496

原创 go实现一个简单的游戏服务器框架(lotou)基本设计

代码仓库,目前代码比较粗糙,欢迎各种改进建议。 以为go语言原生支持高并发(goroutine)和通信机制(channel),所以首先想到的就是使用这两个东西来构建我的消息分发机制。 核心思路:有一个core模块维护了所有的服务当有消息发送的时候,通过该core模块将消息发送到对应服务器的接收channel中服务中开一个goroutine来从channel取出消息并处理主要函数: co

2016-12-08 16:08:01 4419

原创 go实现一个简单的游戏服务器框架(lotou)起源

最近一直想学习一些关于游戏服务器的知识,显示看了一下云风的skynet框架,从而对于一个游戏服务器框架有了一个基本概要了解。先来说说我对于skynet的一些理解吧。skynet理解skynet只完成了服务器最核心的一部分功能,必须消息分发,必须服务的创建、销毁以及服务间的通信。 skynet中最核心的两个部分,网络和消息分发。消息分发skynet中有一个消息队列的队列,这个队列保存了每一个服务的消

2016-12-08 15:30:30 7092

原创 go 内置函数

go 的内置函数不拥有前面提到的go的标准类型,因此内置函数不能作为一个函数值赋值给函数类型的变量。closeclose用于关闭一个channel,使用close函数要注意以下几点:关闭一个只接受的channel会导致错误在一个已经关闭的channel上发送数据会导致panic关闭一个nil channel会导致panic在一个channel关闭之后,如果channel已经没有剩余数据等待接

2016-12-08 13:54:45 2537

原创 正则表达式*和?的一个错误认识

这两天再看go的正则表达式的时候,看到关于unicode匹配的方式\p{Name}不是很明白,所以就想写程序来尝试一下,因此而引出博文标题提到的一个误区。 首先还是先解释下\p{name}到底是什么意思。 这里的{name}指的是unicode的类型对象名称,具体可在RE2 syntax中查看。其中{Han}可以用来匹配中文字符,因此下了下面的程序来验证。package mainimport

2016-12-07 09:34:30 480

原创 go控制流和一些特殊语句

send和receive语句send、receive操作是针对channel的 send : ch <- a receive: a := <- ch++和--语句在go中++和--是一个赋值语句,而不是一个表达式因此不能像C/C++那样编写如下代码: a = b++ 同时在go中只有后置,没有前置写法。a++a--if语句ifif是编程语言中最简单的条件分支判断语句,几乎所有语言都有,所

2016-12-06 14:40:44 586

原创 GO声明和作用域

作用域go语言一共有如下几个作用域:全局作用域:所有的关键字和内置类型、函数都拥有全局作用域package作用域:一个包中声明的变量、常量、函数、类型等都拥有包作用域,在同一个包中可以任意访问文件作用域:一个文件中通过import导入的包名,只在当前文件有效函数作用域以及for、if、{}自定义作用域,函数的参数、reciever、返回值都拥有函数作用域,for、if、{}内部的变量只拥有最

2016-12-06 10:49:37 2702

翻译 go语言的type的比较和赋值

type的比较两个类型要么相同要么不相同。如果两个命名类型起源于同样的声明;一个命名类型和不具名类型永远不相同;两个不具名类型相同如果他们拥有同样的字面结构且对应成员有相同的类型。具体的规则如下:两个array type相同如果他们拥有相同的element type和同样的数组长度两个slice type相同如果他们拥有相同的element type两个struct type相同如果他们

2016-12-05 22:57:08 3170

原创 go语言基本数据类型

初识GO语言go是一门新语言,他在语言级提供了并发的支持(goroutine)和通信工具channel,同时它也是一门编译型、强类型的语言,拥有内存GC机制。程序的模块通过package来组织。GO基础整数十进制整数,使用0-9的数字表示且不以0开头。八进制整数,以0开头,0-7的数字表示十六进制整数,以0X或者是0x开头,0-9|A-F|a-f组成100 1234550100 0600

2016-12-05 15:50:48 3687 4

vs2008 on win7

vs2008在win7上卸载的时候不出现输入注册码的对话框,当进入到卸载页面的时候,运行该软件,即可出现输入注册码和update的按钮。

2012-11-28

OpenCV 2.0教程

一本指导使用opencv2.0的书,本书中描述了opencv2.0之后新加入的C++接口的使用。

2012-06-05

敏捷软件开发:原则、模式与实践

2003年6月荣获美国《软件开发》第13届震憾(jolt)大奖![/b][/font]   在本书中,享誉全球的软件开发专家和软件工程大师robert c.martin将向您展示如何解决软件开发人员、项目经理及软件项目领导们所面临的最棘手的问题。这本综合性、实用性的敏捷开发和极限编程方面的指南,是由敏捷开发的创始人之一所撰写的。    [b][font color="#ff6600"]特色内容:[/font][/b]    ●讲述在预算和时间要求下,软件开发人员和项目经理如何使用敏捷开发完成项目。    ●使用真实案例讲解如何用极限编程来设计、测试、量构和结对编程    ●包含了极具价值的可多次使用的C#源代码。    ●重点讲述了如何使用uml和设计模式解决面向客户系统

2011-07-01

I2C+ 协议标准中文版

I2C协议标准中文版

2011-02-15

linux设备驱动程序示例源代码

本书是经典著作《linux 设备驱动程序》的第三版。该版本已针对 linux 内核的 2.6.10 彻底更新过了。内核的这个版本针对常见任务完成了合理化设计及相应的简化,比如即插即用,利用sysfs 文件系统和用户空间交互,以及标准总线上的多设备管理等等。本书提供了完整的示例程序,不需要特殊的硬件即可编译和运行这些示例程序。本书还在单独的章节中讲述了 pci、usb 和 tty(终端)子系统。对期望了解操作系统内部工作原理的读者来讲,本书也深入阐述了地址空间、异步事件以及 i/o 等方面的内容。本书主要介绍:完整的字符、块、tty(终端)及网络驱动程序驱动程序的调试、中断、计时问题、并发、锁定和对称多处理器系统(smp)、内存管理和 dma、驱动程序模型和 sysfs、热插拔设备、对常见总线的描述,包括 scsi、pci、usb 和 ieee1394(火线)。 本资源包含了书中用到的所有示例程序

2010-12-25

数据结构与算法分析-c语言描述

书中详细介绍了当前流行的论题和新的变化,讨论了算法设计技巧,并在研究算法的性能、效率以及对运行时间分析的基础上考查了一些高级数据结构,从历史的角度和近年的进展对数据结构的活跃领域进行了简要的概括。由于本书选材新颖,方法实用,题例丰富,取舍得当。本书的目的是培养学生良好的程序设计技巧和熟练的算法分析能力,使得他们能够开发出高效率的程序。从服务于实践又锻炼学生实际能力出发,书中提供了大部算法的 C程序和伪码例程,但并不是全部。一些程序可从互联网上获得。

2010-12-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除