实现一个简单的网络通信下(udp)

时间过去好久了,先回忆一下上一篇博客的代码!!

目前来看,我们客户端发一条消息,我服务器收到这一条消息之后呢,服务器也知道了是谁给我发来的消息,紧接这就把这条消息放进buffer当中,在把我们的 用户IP和端口号,提取出来当作我们 的key插入我们的用户管理当中,在发回给客户端

那么我们接下来在干一件事,在加一个客户端

但是这时候127.0.0.1 - 42909这个客户端并没有"你好l"这一条消息,这个客户端的IO 被阻塞了

而我们现在想要的效果是,我服务端发送消息,在服务端用户管理当中的用户,都能收到这一条消息,并且哪怕我的这个用户不向服务端发送消息,也依然能收到来自服务端的消息

那么我们就需要把我们的客户端改一下,引入我们的多线程,让我们的一个线程发消息,一个线程收消息

这样,我们的读写两个线程的回调方法就写好了

发现此时我们的多线程读写,用的sock都是同一个,sock代表的就是文件(我们是没办法对同一个文件同时又是读又是写的),但是在这边是没有问题的,我们的udp是全双工的 --> 可以同时进行收和发,而不受干扰

但是此时,一个客户端把要发的和要收的消息,混在一起了,我们可以分开来

相关推荐
IT从业者张某某7 小时前
Docker 网络
网络·docker·容器
盟接之桥7 小时前
打破全球供应链“黑盒”:盟接之桥®如何用标准化EDI重塑中国制造的数据主权与交付底气
大数据·网络·人工智能·汽车·制造
酣大智7 小时前
eNSP中AR报错40,重新安装
网络·华为
墨染天姬7 小时前
【V2X】BP QMI框架概述
网络
叶子2024227 小时前
电网面试回答
网络·面试·职场和发展
网络安全实验室7 小时前
【程序人生】程序员接私活常用平台汇总_嵌入式开发外包平台
网络·python·学习·程序人生·web安全·面试·职场和发展
志栋智能8 小时前
超自动化安全:释放安全专家创造力的钥匙
运维·服务器·网络·人工智能·自动化
网络安全许木8 小时前
自学渗透测试第19天(ARP欺骗原理与Ettercap实战)
网络·web安全·渗透测试
Chengbei118 小时前
业务视角下的金融SRC快速挖掘思路
网络·安全·web安全·网络安全·金融·系统安全·网络攻击模型
中科三方8 小时前
SSL证书、域名与IP地址:三者关系全面解析与常见误区澄清
网络·tcp/ip·ssl