内存泄漏

  • 是什么? 与几种常见情况
    • 存在危害
  • 内存泄漏 和 内存溢出
  • 解决方案
    • 检测内存泄漏
      • 常用的检测工具
    • 如何避免内存泄漏

是什么? 与几种常见情况

什么是内存泄漏?

内存泄漏是因为疏忽或错误造成程序未能释放已经不再使用的内存的情况。 其实就是内存在程序运行中动态申请的内存空间由于某种原因程序未释放或无法释放。

C/C++程序中一般我们关心两种方面的内存泄漏:
堆内存泄漏(Heap leak)
堆内存指的是程序执行中依据须要分配通过malloc / calloc / realloc / new等从堆中分配的一块内存,用完后必须通过调用相应的 free或者delete 删掉。假设程序的设计错误导致这部分内存没有被释放,那么以后这部分空间将无法再被使用,就会产生Heap Leak。
系统资源泄漏
指程序使用系统分配的资源,比方套接字、文件描述符、管道等没有使用对应的函数释放掉,导致系统资源的浪费,严重可导致系统效能减少,系统执行不稳定。

什么是内存泄漏?(面试常考)相关推荐

  1. PHP面试常考内容之Memcache和Redis(2)

    你好,是我琉忆. 继周一(2019.2-18)发布的"PHP面试常考内容之Memcache和Redis(1)"后,这是第二篇,感谢你的支持和阅读. 本周(2019.2-18至2-2 ...

  2. PHP面试常考内容之面向对象(3)

    PHP面试专栏正式起更,每周一.三.五更新,提供最好最优质的PHP面试内容. 继上一篇"PHP面试常考内容之面向对象(2)"发表后,今天更新面向对象的最后一篇(3).需要(1),( ...

  3. JAVA面试常考系列九

    转载自 JAVA面试常考系列九 题目一 RMI架构层的结构是如何组成的? RMI体系结构由三层组成,分别是: 存根和骨架层(Stub and Skeleton Layer) 远程引用层(Remote ...

  4. JAVA面试常考系列五

    转载自 JAVA面试常考系列五 题目一 串行(serial)收集器和吞吐量(throughput)收集器的区别是什么? 吞吐量收集器使用并行版本的新生代垃圾收集器,它用于中等规模和大规模数据的应用程序 ...

  5. java面试常考系列四

    转载自 java面试常考系列四 题目一 大O符号(big-O notation)的作用是什么?有哪些使用方法? 大O符号描述了当数据结构里面的元素增加的时候,算法的规模或者是性能在最坏的场景下有多么好 ...

  6. JAVA面试常考系列三

    转载自 JAVA面试常考系列三 题目一 什么是迭代器(Iterator)? 迭代器(iterator)是一种对象,它能够用来遍历标准模板库容器中的部分或全部元素,每个迭代器对象代表容器中确定的地址.迭 ...

  7. JAVA面试常考系列二

    转载自 JAVA面试常考系列二 题目一 解释一下线程和进程 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位. 线程是进程的一个实体,是CPU调 ...

  8. JAVA面试常考系列一

    转载自 JAVA面试常考系列一 题目一 什么是Java虚拟机?为什么Java被称为平台无关的编程语言? java虚拟机是一个可以执行字节码文件(.class)的虚拟机进程. 为什么java与平台无关呢 ...

  9. 64位 int 占几个字节_面试常考,项目易错,长文详解C/C++中的字节对齐

    面试常考,项目易错,长文详解C/C++中的字节对齐​mp.weixin.qq.com 引入主题,看代码 我们先来看看以下程序 //编译器:https://tool.lu/coderunner/ //来 ...

  10. @entity 不限字节长度的类型_面试常考,项目易错,长文详解C/C++中的字节对齐...

    面试常考,项目易错,长文详解C/C++中的字节对齐​mp.weixin.qq.com 引入主题,看代码 我们先来看看以下程序 //编译器:https://tool.lu/coderunner/ //来 ...

最新文章

  1. Zookeeper迁移(扩容/缩容)
  2. 前后端分离系统使用Nginx代理https地址
  3. Windows内核原理-同步IO与异步IO
  4. 巨省显存的重计算技巧在TF、Keras中的正确打开方式
  5. CSS强制英文、中文换行与不换行
  6. 算法笔记--二分图判定
  7. 喀什市2021年高考成绩查询,新疆喀什地区2021高考文化生分数线
  8. 三层交换机如何配置?如何实现不同vlan间的通信?
  9. Node.js入门(含NVM、NPM、NVM的安装)-(转载)
  10. HTML制作简单的个人简历网页
  11. 垂直行业大数据分层架构图
  12. 圆柱体积怎么算立方公式_圆柱体积怎么算立方 高为3米则此圆柱的体积为27
  13. 阿里云弹性计算ECS科普
  14. 一行代码教你屏蔽你的博客广告
  15. 使去中心化媒体网络相关联的NFT元数据标准
  16. 多媒体教学计算机遥控,多媒体教学系统使用说明
  17. 邱锡鹏 神经网络与深度学习课程【十六】——深度信念网络
  18. QEMU 网络配置一把梭
  19. 家里Wifi网速突然变慢,一招瞬间提速
  20. 【关于微阵列芯片和RNA-seq的比较】

热门文章

  1. java modbus lrc,C#实现modbus基于ASCII的LRC校验
  2. 微信小程序第三方插件
  3. 部署alertmanager-告警规则
  4. 如何抢努比亚z9 max
  5. 数据结构:链表及其C++实现
  6. Linux C/C++ 崩溃诊断大师:解锁软件问题定位与修复的秘密武器
  7. python字典排序sort_Python字典排序
  8. C#表白工具(稍有些无赖)
  9. 一个摄影爱好者眼中的PRESSon
  10. 最小二乘法在回归分析中的演算过程