当玩家进行对战匹配时,服务器会根据档次,将玩家送到不同档次的匹配队列当中。共有3个匹配队列,分别是普通队列、高手队列和大神队列,每一条队列由单独的线程去控制。因此,匹配对战模块,需要由两个类,一个类是匹配队列的类,另...
房间管理模块,就是对每一间游戏房间进行管理,因此我首先需要先创建出一个房间类,实现了房间类的功能,再去创建房间管理的类,从而实现房间管理的类的功能。...
在线用户管理就是对当前处于游戏大厅或者游戏房间中的用户进行管理,主要是建⽴起用户与Socket连接的映射关系,这个模块具有两个功能:
数据管理模块,基于mysql数据库进行数据管理以及封装数据管理模块实现数据库访问。因此,在数据库中,我需要为每一张表创建出对应类,通过类实例化的对象来访问这张数据库表中的数 据,这样的话当我们要访问哪张表的时候,使⽤哪...
#ifndef _M_LOGGER_H_ 和 #define _M_LOGGER_H_是预处理器指令,用于防止头文件被重复包含。如果头文件已经被包含了,那么这对指令将会被跳过。
Json 是⼀种数据交换格式,它采⽤完全独立于编程语⾔的文本格式来存储和表示数据。
C++的版本管理简单粗暴,像libc这种基础库如果需要多版本,用起来非常不方便,但c/c++基础库都是向下兼容的,最好的方式就是用一套比较新的系统,带着新的libc,再安装一套和系统版本同年代的新一点的gcc编译器即可,可满足大部分...
首先为什么要实行分块传输字符串,一般而言Socket套接字最长发送的字节数为8192字节,如果发送的字节超出了此范围则后续部分会被自动截断,此时将字符串进行分块传输将显得格外重要,分块传输的关键在于封装实现一个字符串切...
filesystem 是一个文件系统库,前身是 boost.filesystem,用于实现跨平台的文件处理。
condition_variable(条件变量)是 C++11 中提供的一种多线程同步机制,它允许一个或多个线程等待另一个线程发出通知,以便能够有效地进行线程同步。