文档章节

应用程序一运行就崩溃,且每次崩溃的位置都不一样

一贱书生
 一贱书生
发布于 2016/11/24 08:56
字数 419
阅读 34
收藏 0

有个应用程序一运行就崩溃,现在你拿到了源码。在调试器中运行10次之后,发现该应用每次崩溃的位置都不一样。这个应用只有一个线程,并且只调用C标准库函数。究竟是什么样的编程错误导致程序崩溃?该如何逐一测试每种错误?

 

解答

随机崩溃的常见原因:

1)随机变量:某个随机变量或可变分量,程序每次执行时取值不定。包括:用户输入、程序生成的随机数或当前时间等。

2)未初始化变量:在某些语言中,该变量可能含有任意值。这个变量取不同值可能导致代码每次执行路径有所不同。

3)内存泄露:可能存在内存溢出。每次运行时引发问题的可疑进程随机不定,这与当时运行的进程数量有关。另外还包括堆溢出或栈内数据被破坏。

4)外部以来:可能依赖别的应用程序、机器或资源。要是存在多处依赖,程序就有可能在任意位置崩溃。

 

解决:

1)关闭系统中其他所有应用,仔细追踪资源使用。如果该程序有些部分可以关掉,就设法关掉。

2)在另外一台机器上运行该程序,看看是否重现同一问题。

3)借助工具检查特定情况。例如,可以利用运行时工具来检查未初始化变量。

© 著作权归作者所有

共有 人打赏支持
一贱书生
粉丝 19
博文 724
码字总数 600123
作品 0
私信 提问
[转]c/c++中delete/free 指针后,设置p=NULL的好处

刚刚看代码时看到这个问题,这篇博客就很好地解释了这个问题,赞一个。 从简单的代码开始: int* p = new int; p = 5; delete p; p = NULL; Line4把释放了的指针立即设置为null,我们一般认识...

zhongdecai
2014/03/01
0
0
[译]了解和分析iOS应用崩溃报告

当一个应用发生崩溃时会产生一份崩溃报告(Crash Report),该报告可以帮助我们了解崩溃的产生原因。该文档讲述了关于怎么样符号化、理解和分析崩溃报告的相关内容。 介绍 获取崩溃和低内存报...

vimfung
2016/06/29
407
2
内存写越界导致破环堆结构引起的崩溃问题定位经验

前段时间开发的一个后端C模块上线后,线上出core,初始时,因为訪问压力不大,所以崩溃是上线3天左右出现的。当时用gdb跟进调用堆栈并检查源代码,发现出core位置的代码沒有啥问题。因为当时...

云栖希望。
2017/12/04
0
0
iOS-崩溃调试

在iOS开发调试过程中以及上线之后,程序经常会出现崩溃的问题。简单的崩溃还好说,复杂的崩溃就需要我们通过解析Crash文件来分析了,解析Crash文件在iOS开发中是比较常见的。 获取崩溃信息 ...

hfzhangzhang
2016/01/21
23
0
iOS应用崩溃日志分析

iOS应用崩溃日志分析 为确保你的应用正确无误,在将其提交到应用商店之前,你必定进行了大量的测试工作。它在你的设备上也运行得很好,但是,上了应用商店后,还是有用户抱怨会闪退 ! 如果你...

法斗斗
2015/10/08
58
0

没有更多内容

加载失败,请刷新页面

加载更多

漏洞防御与修复工作

漏洞管理工作是企业安全建设必不可少的一环,在风险管理工作中,漏洞管理能够防患于未然,企业对漏洞管理有着广泛的基础建设和实践经验。但随着攻防技术的发展,传统漏洞管理的安全技术和管理...

linuxprobe16
17分钟前
0
0
MicroPython技术及应用前景

1 Micropython技术是什么? MicroPython极精简高效的实现了Python3语言。它包含Python标准库的一小部分,能在单片机和受限环境中运行。 1.1 MicroPython发展 由剑桥大学的理论物理学家乔治....

bodasisiter
24分钟前
0
0
跟我学Spring Cloud(Finchley版)-13-通用方式使用Hystrix

本节详细讲解使用Hystrix的通用方式。 简介 Hystrix是由Netflix开源的一个延迟和容错库,用于隔离访问远程系统、服务或者第三方库,防止级联失败,从而提升系统的可用性与容错性。Hystrix主要...

周立_ITMuch
32分钟前
0
0
🛠️Hanjst/汉吉斯特更新加JavaScript运行时优化等

这是 Hanjst/汉吉斯特 发布以来的首个主要升级更新版本。这次的主要升级更新的内容包括移除HTML Comments注释行, 优化在 Hanjst include模板文件时的JavaScript运行时环境。 Hanjst 在设计和...

wadelau
今天
2
0
OSChina 周六乱弹 —— 舔狗是没有好下场的

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @我没有抓狂 :#今天听什么# #今天听这个# 分享 Nirvana 的歌曲《Smells Like Teen Spi...》 《Smells Like Teen Spi...》- Nirvana 手机党少...

小小编辑
今天
494
13

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部