TCP服务器的编写(上)

tcp服务器的初始化,第一件事情就是创建套接字

目前来说我们的tcp套接和udp套接是没有任何区别的!!!

那么接下来,如果是udp创建好套接字在进行绑定,那么基本上就完成我们udp服务器的初始化

而我们tcp创建好套接字,在进行绑定,因为我们tcp是面向连接的,当我们正式通信的时候,需要建立连接

这样子也就完成了,我们tcp服务器的初始化


这是我们的第一版服务器


我们尝试用两个客户端访问我们的服务器

但是当我让第一个客户端,退出时

只能够进行一次处理一个客户端,处理完了一个 , 才能处理完下一个

很显然,是不能够直接被使用的!! ---- 为什么??如何解决呢??

因为我们目前写的是单进程,获取连接成功,进行server时,server内部是一个死循环,这个死循环在进行读取,如果server内部死循环不退出,那么一直在进行读取,但进程的执行流,就无法回到上面accept获取新连接

相关推荐
酷酷的崽79811 分钟前
CANN 生态可维护性与可观测性:构建生产级边缘 AI 系统的运维体系
运维·人工智能
做人不要太理性16 分钟前
CANN Runtime 运行时组件深度解析:任务调度机制、存储管理策略与维测体系构建逻辑
android·运维·魔珐星云
XiaoFan01220 分钟前
免密批量抓取日志并集中输出
java·linux·服务器
souyuanzhanvip26 分钟前
ServerBox v1.0.1316 跨平台 Linux 服务器管理工具
linux·运维·服务器
文静小土豆34 分钟前
Docker 与 containerd 代理配置详解:镜像拉取速度慢的终极解决方案
运维·docker·容器
roman_日积跬步-终至千里1 小时前
【LangGraph4j】LangGraph4j 核心概念与图编排原理
java·服务器·数据库
野犬寒鸦2 小时前
从零起步学习并发编程 || 第六章:ReentrantLock与synchronized 的辨析及运用
java·服务器·数据库·后端·学习·算法
HalvmånEver2 小时前
Linux:线程互斥
java·linux·运维
JY.yuyu2 小时前
Docker常用命令——数据卷管理 / 端口映射 / 容器互联
运维·docker·容器
alice--小文子3 小时前
cursor-mcp工具使用
java·服务器·前端