Skip to content

Left-Zzzz/muti-Gomoku-master

Repository files navigation

muti-Gomoku-master

多人五子棋对战小游戏

基于https://github.com/youngyangyang04/Gomoku 的改版。

改进的地方有:

1.实现了服务端分离的功能 2.可以提供最大26人联机游戏,自定义人数观战

QAQ太菜了,代码很乱很冗余。

存在的问题(已解决):

由于没有参考,在read和write到客户端消息的相关功能可能会出现fd异常导致服务器退出的问题。因为我在监听函数功能那跳过了当前收发消息客户端的sockfd,导致了收发消息功能函数执行过程中,如果客户端退出,然后监听函数没来得及吧这个sockfd从fd_set中去掉,导致的wirte一个空fd异常退出。问题原因是当客户端意外退出,服务端给客户端write是会收到RST报文,导致内核发送sigpipe信号。而该信号默认处理方式是结束进程,更改信号处理方式为不处理即可。


可改进方向(思路):

  1. 可以开创多个房间,每个房间有个房主。
  2. 房主可以设置五子棋棋盘大小,同时游戏人数,有开始游戏权限。
  3. select模型可以改为epoll,引入线程池,提高服务器并发能力。
  4. 更改传输协议,目前是传struct,后续可以改为json、protobuf等。
  5. 更改完传输协议后,就可以跨平台编写客户端了。

详情:https://blog.csdn.net/Left_Zzzz/article/details/117876380

About

多人联机五子棋小游戏

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published