基于 Reactor 模型 ( epoll+多线程 ) 的在线聊天室

该博客记录了一个基于Reactor模型、使用epoll+多线程的在线聊天室项目。内容涵盖Unix网络编程、C++多线程、Mysql数据库和QT图形界面开发。服务端采用Linux上的Epoll,通过主线程监听,工作线程处理Accept、Receive和Send请求。项目源码可在作者的Github和博客找到。
摘要由CSDN通过智能技术生成

因为项目需要,所以肝了一个在线聊天室,花了不少时间哈哈哈,在博客里记录一下,转载请注明出处!
该项目已上传至 Github:https://github.com/senyucci/TcpChatRoom
详细的源码 ( 客户端 + 服务端 ) 下载地址在个人博客的文末:https://www.seny.xyz/archives/onlinechat

相关技术

该项目所需要的技术有

  • Unix 网络编程相关知识
  • C++ 多线程相关技术
  • Mysql 数据库相关
  • QT图形界面开发

一、Unix 网络编程

Unix网络编程的部分,这块虽然知识既多又杂,但只要理解了 socket 的抽象,并将网络编程的 相关函数 与计网中的 相关模型 进行结合就能很快掌握,究其根本就是一套相同的模板:

服务器:
// 1. 创建并初始化服务器 socket
int socket(int family,int type,int protocol);
int bind(int sockfd, const struct sockaddr *addr, socklen_t addrlen);

// 2. 开启监听
int listen(int sockfd, int backlog);

// 3. 等待客户端连接
int accept(int sockfd, struct sockaddr *addr, socklen_t *addrlen)
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值