已经有半年没有更新博客了,在这期间,时而沉淀,时而因为就业感到迷茫,到现在,忽然看开了一点,不管未来咋样,至少不要让自己后悔,人生需要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
到此这篇tcp工具怎么用(tcp server工具)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/rfx/69628.html