自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 资源 (1)
  • 收藏
  • 关注

原创 5. 网络数据传输中的粘包阻塞等问题

至此,客户端代码和服务端代码都可以正常运行,收发数据:但是,程序在网络中快速的收发大量数据时,会出现什么问题呢?现在,我们对程序做一些修改,进行一些测试:将client输入命令线程屏蔽,自动发送数据://启动线程函数 //thread t1(cmdThread, &client); //t1.detach(); Login login; strcpy(login.UserName, "anthony"); strcpy(login.passWord, "chen"); .

2021-03-02 22:11:40 520

原创 4. 封装TcpServer类和TcpClient类

在前面几次的代码里面,因为没有采用面向对象编程的方法,所以代码看起来比较混乱,这次我们采用面向对象编程封装出TcpServer类和TcpClient类TcpClient类声明:#ifndef _TCPCLIENT_H_#define _TCPCLIENT_H_#include <WinSock2.h>#include <Windows.h>#pragma comment(lib, "ws2_32.lib")enum CMD{ CMD_LOGIN, CMD_Log

2021-02-22 20:48:29 687 2

原创 3. 加入select网络模型和多线程处理多客户端

单独的使用socket进行客户端和服务器的通信时,是一对一的阻塞模式,在调用这些阻塞函数时,不能去做其他事情,只能被动的去等待。我们可以使用select网络模型来处理多个客户端。C/S模型中accept()会阻塞一直傻等socket来链接select模型只解决accept()傻等的问题,不解决recv(), send()执行阻塞问题select模型的使用逻辑:把所有的socket(服务器和客户端)放进一个数组中select会遍历整个数组将有响应的socket放进另一个数组对有响应的s.

2021-02-20 19:42:44 559

原创 2. C++ Socket 网络数据传输的几种方式

2. C++ Socket 网络数据传输的几种方式C++ Socket在进行网络数据的传送时,数据一般是char类型的字符数组,除此之外还有一些方法可以传送我们自己定义的数据类型自定义结构体Json序列化定义Class对象1. 结构体定义一个结构体,例如:struct DataPack{ int age; string name;};在发送数据的时候对数据进行处理,将DataPack类型的指针强制转换成char类型指针,具体如下:DataPack da = { 20, "

2021-02-17 12:08:42 3827 1

原创 1. Windows网络编程(C++ Socket编程)

Windows网络编程(C++ Socket编程)文章目录Windows网络编程(C++ Socket编程)基于TCP/IP协议的C/S模型服务端1. 打开网络库2. 校验版本3. 创建一个socket4. 绑定地址与端口5. listen监听网络端口6. accept等待客户端连接(创建客户端socket)7. 与客户端收发消息客户端基于TCP/IP协议的C/S模型特点:面向连接的、可靠的、基于字节流的传输层协议。C/S 即 客户端/服务器 模型。socket:套节字服务端网络头文件

2021-02-12 19:52:04 7121 7

python-3.7.0-amd64.zip

python3.7的安装包,下载解压,打开安装文件即可自行安装,建议选择C盘外安装。 安装完成后,可在win10桌面搜索框中输入cmd,打开命令提示符,输入python查看。

2020-01-31

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除