C++
意林飞笑
这个作者很懒,什么都没留下…
展开
-
C++内存分配管理
内存分配方面: 堆: 操作系统有一个记录空闲内存地址的链表,当系统收到程序的申请时,会遍历该链表,寻找第一个空间大于所申请空间的堆结点,然后将该结点从空闲结点链表中删 除,并将该结点的空间分配给程序,另外,对于大多数系统,会在这块内存空间中的首地址处记录本次分配的大小,这样代码中的delete语句才能正确的释放本内存空间。我们常说的内存泄露,最常见的就是堆泄露(还有资源泄露),它是指程序在运行...原创 2020-09-27 19:05:49 · 107 阅读 · 0 评论 -
STL标准模板库
STL标准模板库包含常用数据结构和算法,把数据和操作分离,迭代器在容器和算法间充当粘合剂。 STL序列容器:vector、string、deque和list 常用函数: 在最后添加一个元素 push_back() 移除最后一个元素 pop_back() 插入元素 insert() 删除指定元素erase() template<class _Ty,class_A =allocator...原创 2019-06-22 12:10:49 · 84 阅读 · 0 评论 -
网络编程—epoll
一、原理 epoll使用mmap减少复制开销。 并且epoll使用“事件”的就绪通知方式,通过epoll_ctl注册fd,一旦该fd就绪,内核就会采用类似callback的回调机制来激活该fd,epoll_wait便可以收到通知。 二、最大连接数 虽然连接数有上限,但是很大,1G内存的机器上可以打开10万左右的连接,2G内存的机器可以打开20万左右的连接 三、效率 因为epoll内核中实...原创 2019-11-30 22:02:33 · 256 阅读 · 0 评论