自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(3)
  • 收藏
  • 关注

原创 Linux网络套接字(socket)

Linux网络套接字(socket) 概念:操作系统用于网络应用开发的一系列API函数 Windows下的socket属于一个句柄 而linux下的socket属于一个文件描述符 它是封装成一个文件描述符 但是创建的时候还是默认包含本机任意ip和随机端口端口号 Socketfd=socket(AF_INET,SOCK_STREAM,0)#创建socket 第一个参数是ip协议 AF_INET(ipv4)AF_INET6(ipv6) 第二参数是运输层协议SOCK_STREAM(流协议 大多数是TCP) SOC

2021-03-22 20:20:41 258

原创 零拷贝问题

零拷贝: 定义:避免cpu将数据从一块存储空间拷贝到另一个存储空间的技术。通常用于网络文件传输 以减少cpu消耗和内存带宽的占用 ,减少用户空间(用户可操作的内存缓存区域)和cpu内核空间(cpu内核可操作的内存缓存和寄存器缓存)的拷贝过程,减少用户上下文和cpu内核上下文的切换,让cpu解脱出来可以做别的是事情,提高系统效率;通过DMA的方式(直接访问内存) 1.传统的拷贝过程(以从硬盘读取数据并发送为例)首先在用户空间切换到内核空间 内核调用read方法 然后内核会发起读取数据的请求 然后硬盘在DMA的

2021-03-22 20:11:50 73

原创 智能指针

每个程序除了静态内存和栈区,还有一个内存池,这部分内存称为堆区。 堆区的是存储动态分配的对象,就是在程序运行时分配的对象。当我们不再需要这个对象的时候,就手动去销毁他。C++ 使用new创建对象并且使用delete去销毁他,new的时候为对象分配一个存储空间并且返回一个指向该对象的一个指针,而delete指向一个动态独享的指针,销毁对象,并释放与之相关的内存。因为动态的去管理内存,会导致两个问题,1.忘记释放,造成内存泄漏。2.还有指针引用内存的情况就释放了它,就会产生引用非法内存的指针。为了避免手动释放带

2021-03-19 20:39:19 53

空空如也

空空如也

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

TA关注的人

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