摘要: epoll默认的模式我们称为水平触发模式(Level Trigger,LT);与 poll 的事件宏相比,epoll 新增了两个事件宏 EPOLLET和EPOLLONESHOT,EPOLLET就是边缘触发模式(Edge Trigger,ET),当往epoll内核事件表中注册fd上的EPOLLET事件 阅读全文
posted @ 2021-04-13 23:21 封狼居胥! 阅读(321) 评论(0) 推荐(0) 编辑
摘要: 1. sizeof可以用类型做参数,也可以用数组、指针,对象和函数做参数;strlen只能用char*做参数,且必须是以''\0''结尾,当数组名作为参数传入时,实际上数组就退化成指针了。 2. sizeof返回存储对象实际占用的字节大小;strlen的功能是返回字符串的长度,遇到/0就停止,不包含 阅读全文
posted @ 2021-04-12 13:55 封狼居胥! 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 头文件,#include <string> string str,定义字符串 str.begin()/str.end(),返回首迭代器/尾后迭代器 str.size()/str.length(),str存储的字符个数/长度 str.capacity(),str能包含的字符的个数 str.empty( 阅读全文
posted @ 2021-04-06 22:56 封狼居胥! 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 头文件,#include<vector> vector<int> vec,创建vector对象 vec.begin()/vec.end(),返回首迭代器/尾后迭代器 vec.resize(n),既分配空间(改变capacity),也创建对象(改变size) vec.reserve(n),只分配空间( 阅读全文
posted @ 2021-04-06 22:08 封狼居胥! 阅读(321) 评论(0) 推荐(1) 编辑
摘要: HTTP 优点 1. 简单 HTTP 基本的报文格式为 header + body,头部信息也是 key-value 简单文本的形式。 2. 灵活和易于扩展 HTTP协议里的请求方法、状态码、头字段等都允许自定义和扩充;HTTP 由于是工作在应用层,它的下层可以随意变化,HTTPS 就是在 HTTP 阅读全文
posted @ 2021-04-05 16:31 封狼居胥! 阅读(1423) 评论(0) 推荐(0) 编辑
摘要: 对于二叉查找树,当插入节点时,在一些情况下,而二叉树会出现不平衡的状况,即将节点都插入到了二叉树的左子树上;使得二叉树的查找性能大打折扣,因此,为了解决了二叉查找树退化成链表的问题,引入了平衡二叉树。 平衡二叉树(AVL) 定义: 平衡二叉树 1.左、右子树的高度差的绝对值小于等于1; 2.左、右子 阅读全文
posted @ 2021-03-16 20:09 封狼居胥! 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 由于平衡二叉树是高度平衡的,频繁的插入和删除会进行频繁的平衡调整,导致效率下降;所以引入了红黑树,红黑树是一种弱平衡树,插入最多旋转两次,删除最多旋转三次,查找、插入和删除的时间复杂度均为O(logn),性能稳定。 红黑树 红黑树是一种二叉查找树,除了满足二叉查找树的基本特性意外,还满足如下性质: 阅读全文
posted @ 2021-03-16 20:07 封狼居胥! 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 二叉查找树(BST) 定义: 又称二叉排序树,二叉搜索树;具备以下特性的树称为二叉查找树: 1.左子树上所有结点的值均小于它的根结点的值; 2.右子树上所有结点的值均大于它的根结点的值; 3.左、右子树也分别为二叉查找树。 typedef struct STreeNode* pSTreeNode; 阅读全文
posted @ 2021-03-14 19:50 封狼居胥! 阅读(77) 评论(0) 推荐(0) 编辑
摘要: Session 对于HTTP短连接请求,由于其无状态记忆的特点,此次连接无法得到上次连接的状态。因此,引入了Session的概念,服务器为每个用户创建一个Session,存储用户的相关信息,以便多次请求能够定位到同一个上下文。这样,当用户在应用程序的 Web 页之间跳转时,存储在 Session 对 阅读全文
posted @ 2021-03-13 22:16 封狼居胥! 阅读(495) 评论(0) 推荐(0) 编辑
摘要: 互斥锁std::mutex C++中常见的cout是一个共享资源,如果在多个线程同时执行cout,会发现很奇怪的问题,解决办法就是要对cout这个共享资源进行保护。 在C++中,可以使用互斥锁std::mutex进行资源保护,头文件是#include <mutex>,共有两种操作:锁定(lock)与 阅读全文
posted @ 2021-03-13 16:24 封狼居胥! 阅读(569) 评论(0) 推荐(0) 编辑