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

项目名称:聊天室

使用的技术

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

项目组成

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

具体模块功能

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

在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值