/MultiThreadDataTransmission

在进行数据传输的过程中可以选择TCP或者UDP协议,TCP虽然相对而言比较复杂,具有三次握手进行连接以及四次分手断开连接,但具备可靠性,被大公司广泛使用,因此设计一种基于TCP的多线程数据传输系统来进行通信。

Primary LanguageC++MIT LicenseMIT

Linux基于QT的局域网多线程数据传输系统(客户端+服务器):

       在进行数据传输的过程中可以选择TCP或者UDP协议,TCP虽然相对而言比较复杂,具有三次握手进行连接以及四次分手断开连接,但具备可靠性,被大公司广泛使用,因此设计一种基于TCP的多线程数据传输系统来进行通信。展示效果:https://www.bilibili.com/video/BV1FK4y1M7Cq


客户端:

1)登陆注册功能:点击账号登录,输入账号以及密码,与Mysql数据库中保存的账号信息进行校验,完成登录;点击账号注册,输入账号、密码、重复输入密码,向Mysql数据库中添加新的账号信息,完成注册,账号登录界面如图3-3所示,账号注册界面如图3-4所示。
2) 连接服务器功能:在IP框中输入IP地址,在PORT框中输入服务器端口号即可完成Socket连接;
3)上传文件功能:点击上传文件按钮,并将当前文件显示到文件信息中;
4)清除文件功能:在每个文件导入后,点击清除文件按钮,即可清空文件信息;
5)传输文件功能:点击传输文件按钮,即可通过TCP协议将文件传输到服务器上;
6)传输消息功能:在消息信息栏输入要传输的消息之后,点击传输消息,即可通过TCP协议进行传输;
7)显示消息功能:在完成消息传输之后,会在右边的消息对话中显示传输的消息信息;
8)清空功能:如果需要清除传输的消息,点击清空消息,即可将消息信息框内的信息清空。
9)运行日志显示功能:当客户端与服务器成功连接以及连接失败,客户端主动断开连接,客户端被动断开连接,客户端发送文件,客户端接收文件都会在运行日志栏中显示当前的时间以及操作。

服务器:

1)显示连接客户端信息功能:在客户端状态一栏可以显示连接上的客户端信息,包括客户端IP地址以及端口,同时点击断开连接,即可断开对应的客户端;
2)选择文件功能:点击选择文件按钮,并将当前文件显示到文件信息中;
3)删除文件功能:在每个文件导入后,点击删除文件按钮,即可清空文件信息;
4)传输文件功能:点击传输文件按钮,即可通过TCP协议将文件传输到所有客户端上;
5)传输消息功能:在消息信息栏输入要传输的消息之后,点击传输消息,即可通过TCP协议进行传输;
6)显示消息功能:在完成消息传输之后,会在右边的消息对话中显示传输的消息信息;
7)清空功能:如果需要清除传输的消息,点击清空消息,即可将消息信息框内的信息清空。
8)运行日志显示功能:当客户端与服务器成功连接,服务器主动断开连接,客户端主动断开连接,服务器发送文件,服务器接收文件都会在运行日志栏中显示当前的时间以及操作。