项目——基于UDP协议简单聊天程序

项目名称:聊天室

使用的技术

  • 平台: CentOS 7, 64位操作系
  • 语言: C/C++
  • 编译工具: g++
  • 序列化反序列化工具: jsoncpp
  • 窗口设计框架: nucrse/ncurses
  • 其他: 生产者消费者模型、信号量互斥机制、多线程编程、socket套接字编程

项目组成

  • client模块: 畅聊系统client上层逻辑,提供client底层通信
  • server模块:畅聊系统server上层逻辑,提供server底层通信
  • service_com模块:畅聊系统底层公共逻辑,如数据序列化
  • window模块:client窗口模块

具体模块功能

服务器端功能介绍:
(1)负责接收消息所有用户的消息
接收到用户发送消息时,就将该消息保存在一个阻塞队列中
(2)对所有在线用户进行广播消息
从阻塞队列中取出一条消息,然后更新在线好友列表,对在线所有用户发送消息
代码:项目——基于UDP协议简单聊天程序_第1张图片
项目——基于UDP协议简单聊天程序_第2张图片
客户端功能介绍:
(1)负责向服务器发送消息
获取用户输入的消息,将数据格式化,向服务器发送消息
(2)负责接收服务器发来的消息
接收到来自服务器的消息时,就将消息保存在双端队列中,然后更新在线好友列表,显示聊天框
项目——基于UDP协议简单聊天程序_第3张图片
window模块

项目——基于UDP协议简单聊天程序_第4张图片

项目——基于UDP协议简单聊天程序_第5张图片

你可能感兴趣的:(project)