11 2020 档案
摘要:定义:对不属于你的内存进行读写叫踩内存。 分类:根据内存分配机制划分,全局区(.data/.bss),堆,栈踩的内存。 全局区: int array[10]; //全局变量 void function() { for(i = 0; i <=10; i++) //array的范围为[0~9],这里ar
阅读全文
摘要:宏是由预处理器对宏进行替代,而内联函数是通过编译器控制来实现的 内联函数有类型检测、语法判断等功能,而宏没有; inline函数是函数,宏不是; 对于短小的函数来说,inline函数可以得到一定效率的提升,和c的宏函数相比,inline函数更加安全可靠,这个是以增加空间的消耗为代价的。
阅读全文
摘要:Linux 进程内存分布: 代码段:存放可执行文件的操作指令 数据段:存放初始化的全局变量和静态变量 BSS段:存放未初始化的全局变量 堆:存放动态申请的内存段 (向高地址扩展的数据结构,频繁申请和释放会使得内存空间不连续,造成碎片影响效率) 栈:存放局部变量 (向低地址扩展的数据结构,不存在碎片)
阅读全文
摘要:TCP传输每个数据包都会进行确认再发送,包的往返时间越长通信性就越低,网络吞吐量越差。 为了解决这个问题,TCP引入了窗口这个概念。 在往返时间较长的情况下也能控制网络性能下降,它的确认应答不再是一包一包的确认,而是几包(如发1,2,3,4,5 )一起进行确认(则收1,2,3,4,5 ),发送端不必
阅读全文