内存不足引发C++程序闪退崩溃问题的分析与总结

目录

1、内存不足一般出现在32位程序中

2、内存不足时会导致malloc或new申请内存失败

2.1、malloc申请内存失败,返回NULL

2.2、new申请内存失败,抛出异常

3、内存不足项目实战案例中相关细节与要点说明

3.1、内存不足导致malloc申请内存失败,导致程序闪退

3.1.1、内存不足导致程序闪退的原因

3.1.2、abort强制终止进程导致程序闪退时,不会生成dump文件

3.2、内存不足导致new申请内存时抛出异常,引发程序崩溃

4、引发内存不足的两个原因

4.1、32位程序默认的用户态虚拟内存只有2GB,程序模块较多,可能占用的内存接近2GB了

4.2、程序中有内存泄漏,且内存泄漏的代码在不断的执行,导致程序占用内存越来越多

5、解决内存不够用的办法

6、最后


C++软件异常排查从入门到精通系列教程(专栏文章列表,欢迎订阅,持续更新...)icon-default.png?t=O83Ahttps://blog.csdn.net/chenlycly/article/details/125529931

你可能感兴趣的:(C/C++实战专栏,C++,内存不足,malloc返回NULL,new抛出异常,abort强制终止进程,内存泄漏,排查C++软件异常常用方法)