Linux第十五讲:Socket编程UDP

Linux第十五讲:Socket编程UDP

1.echo server

echo server:写一个服务器,客户端向服务器发送什么,就返回什么,下面我们来实现一下:

1.1服务端代码 -- 获取消息,发送消息

总体代码展示:

1.2客户端代码

1.3知识补充

2.字典查找功能实现

我们想让服务器做这样的一个功能:客户端向服务端输入一个英文单词,服务端将翻译的中文返回并打印给客户端。目的是理解不同的文件之间的沟通:

2.1拓展知识

3.聊天室的实现 -- V1版本

我们想实现类似群聊的功能,当一个客户端向服务器发送消息,为了让群聊中的所有人都看到,服务器需要将消息向所有在群聊中的人再发送一遍:

3.1V2版本 -- 一个线程发送消息,一个线程接收消息

这样就可以互相看到了:

3.2V3版本 -- 将发消息任务放到任务队列中,使用线程池派发任务

4.补充知识

4.1地址转换函数 -- inet_pton inet_ntop && inet_ntoa线程不安全问题

4.2Rout -- 消息路由功能线程不安全问题

4.3Windows和Linux互相通信操作

Windows和Linux通信调用的接口(sendto)是完全一样的,但是会有细微的差别,可以直接进行通信!

4.4InetAddr细节问题

相关推荐
ZFB00016 分钟前
【麒麟桌面系统】V10-SP1 2503 系统知识——救援模式显示异常
linux·kylin
第七序章7 分钟前
【Linux学习笔记】初识Linux —— 理解gcc编译器
linux·运维·服务器·开发语言·人工智能·笔记·学习
迎仔15 分钟前
A-总览:GPU驱动运维系列总览
linux·运维
tiantangzhixia17 分钟前
Master PDF Linux 平台的 5.9.35 版本安装与自用
linux·pdf·master pdf
AI_567818 分钟前
阿里云OSS成本优化:生命周期规则+分层存储省70%
运维·数据库·人工智能·ai
yyy的学习记录23 分钟前
Ubuntu下urdf模型转换成proto模型
linux·运维·ubuntu
礼拜天没时间.28 分钟前
自定义镜像制作——从Dockerfile到镜像
linux·docker·容器·centos·bash
xixingzhe228 分钟前
ubuntu安装gitlab
linux·ubuntu·gitlab
猫头虎34 分钟前
OpenClaw开源汉化发行版:介绍、下载、安装、配置教程
运维·windows·开源·aigc·ai编程·agi·csdn
强风79436 分钟前
Linux-传输层协议TCP
linux·网络·tcp/ip