2025年tcp工具怎么用(tcp server工具)

tcp工具怎么用(tcp server工具)svg xmlns http www w3 org 2000 svg style display none svg

大家好,我是讯享网,很高兴认识大家。



 <svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> <path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path> </svg> <p></p> 

讯享网


已经有半年没有更新博客了,在这期间,时而沉淀,时而因为就业感到迷茫,到现在,忽然看开了一点,不管未来咋样,至少不要让自己后悔,人生需要passion!干就完了!!!
在这里插入图片描述
讯享网

源码地址:tcp_server

注:该网络服务只能在有公网ip的机器或者云服务器之间进行
虚拟机上只能进行本地连接,不能连接其他虚拟机

讯享网

在这里插入图片描述

执行结果:
在这里插入图片描述

连接服务器要知道服务器的ip地址

我们执行本地测试时,可以用ifconfig指令查看本地ip地址
在这里插入图片描述

连接

 

两个客户端同时连接
在这里插入图片描述
与此同时server端打印日志
在这里插入图片描述

1.3.1 defaultService(默认服务)

默认服务就是给每个连接的客户端打印一份功能菜单
在这里插入图片描述

1.3.2 transform(大小写转换)

将小写字母转换为大写字母
在这里插入图片描述

1.3.3 ping(ping服务)

ping服务(心跳机制,用于检测服务是否正常),发送ping,服务器如果正常运行会回复一个Pong
在这里插入图片描述

1.3.4 translate(翻译)

输入英文单词,会返回对应的音标和中文解释
在这里插入图片描述

在连接过程中,如果服务端出现问题连接不上,可进行5次的重连,重连成功即可继续执行服务

在这里插入图片描述

2.1.1 .cc文件

Main.cc:程序的初始化、配置以及主要逻辑流程。创建服务器或客户端实例,设置网络连接,处理用户输入
Tcp_Client.cc:实现TCP 客户端的功能。负责与服务器建立连接,发送和接收数据。包含连接管理、数据处理和错误处理的逻辑

2.1.2 .hpp文件

ThreadPool.hpp:定义线程池的接口和实现
LockGuard.hpp:实现一个锁的封装类,确保在作用域内自动加锁和解锁
InetAddr.hpp:处理网络地址相关的功能,IP 地址和端口的表示和转换
Comm.hpp:定义错误信息
Log.hpp:负责打印日志的功能。包含日志级别,日志时间
nocopy.hpp:防止类的复制构造和赋值操作,确保对象的唯一性
Tcp_Server.hpp:定义 TCP 服务器的接口和相关功能,实现如何接收客户端连接、处理请求和管理客户端会话
Thread.hpp:定义线程的接口和实现,管理线程的创建、执行和终止,与线程池配合使用
Translate.hpp:实现词典查找翻译功能

2.1.3 其他文件

Makefile:编译Tcp_Client.cc和Main.cc,同时便于管理生成的可执行程序
Dict.txt:存放词典数据

2.2.1 Log.hpp

讯享网

2.2.2 nocopy.hpp

 

2.2.3 LockGuard.hpp

讯享网

2.2.4 Comm.hpp

 

2.2.5 Thread.hpp

讯享网

2.2.6 ThreadPool.hpp

 

2.2.7 InetAddr.hpp

讯享网

2.2.8 Translate.hpp

 

2.2.9 Tcp_Server.hpp

讯享网

2.2.10 Makefile

 

带注释代码

讯享网

2.2.11 Dict.txt

词典单词数据,可按格式自行添加,数量不限

 

2.2.12 Main.cc

讯享网

2.2.13 Tcp_Client.cc

 

小讯
上一篇 2025-05-11 08:21
下一篇 2025-06-11 07:10

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/173289.html