IOS 崩溃原因统计 2014-07-12 10:13
1,释放自己的autorelease对象,app会crash;
<A: 0x161c1c20>,
<A: 0x167d0550>,
<A: 0x1ed68f50>
)
[no Objective-C description available] 最后一个释放掉啦。通过对象查看器发现
<A: 0x161c1c20>,
<A: 0x167d0550>,
<_NSZombie_A: 0x1ed68f50> ,发现最后一个已经变为无效数据了。
如果再发现_NSZombie_* 这样的数据,基本上都是手动释放了autorelease 对象数据导致。
第二种情况现象如下:
比如:
UIButton *mapButton = [UIButton buttonWithType:UIButtonTypeCustom]; 这样一个button 对象。在未手动release 之前po 对象得出数据入下:
<UIButton: 0x19c68020; frame = (251 20; 50 50); opaque = NO; tag = 2; layer = <CALayer: 0x19c68870>>
等崩溃发生后后台会打印如下数据:
-[CALayer release]: message sent to deallocated instance 0x19c68870
如果在发生 CALayer release 时一定是系统自动释放对象,被我们手动释放掉了。
以上信息是崩溃后得出的结论,当出现以上情况是重新仔细的阅读代码。肯定可以发现问题所在。
IOS 崩溃原因统计 2014-07-12 10:13的更多相关文章
- MAC 下编译 ANDROID P 源码 提示 internal error: Could not find a supported mac sdk: ["10.10" "10.11" "10.12" "10.13"]
MAC 下编译 ANDROID P 源码出现下面的问题: ninja: no work to do. [21/21] out/soong/.bootstrap/bin/soong_build out/ ...
- 大型网站演化(转载 http://homeway.me/2014/12/10/think-about-distributed-clusters/)
0x01.大型网站演化 简单说,分布式是以缩短单个任务的执行时间来提升效率的,而集群则是通过提高单位时间内执行的任务数来提升效率. 集群主要分为:高可用集群(High Availability Clu ...
- 如何看iOS崩溃日志
重点:Triggered by Thread这句话后边的线程号,快速定位问题出现在那个线程,是否是你的锅:Triggered by Thread所指的线程表示导致异常.崩溃的线程 下边内容转自简书 简 ...
- iOS崩溃调试的使用和技巧总结
在iOS开发调试过程中以及上线之后,程序经常会出现崩溃的问题.简单的崩溃还好说,复杂的崩溃就需要我们通过解析Crash文件来分析了,解析Crash文件在iOS开发中是比较常见的. 现在网上有很多关于解 ...
- Uboot 2014.07 makefile分析 - 其他Cortex系列
uboot的官网可以通过谷歌搜索得到,显示结果第一个链接就是. 官网:: http://www.denx.de/wiki/U-Boot ftp下载: ftp://ftp.denx.de/pub/u-b ...
- 【转】 学习ios(必看经典)牛人40天精通iOS开发的学习方法【2015.12.2
原文网址:http://bbs.51cto.com/thread-1099956-1.html 亲爱的学员们: 如今,各路开发者为淘一桶金也纷纷转入iOS开发的行列.你心动了吗?想要行动吗?知道如何做 ...
- iOS崩溃日志 如何看
日志主要分为六个部分:进程信息.基本信息.异常信息.线程回溯.线程状态和二进制映像. 我们在进行iPhone应用测试时必然会在"隐私"中找到不少应用的崩溃日志,但是不会阅读对于很多 ...
- VS2017+QT5.12.10+QGIS3.16环境搭建及开发全流程
题记:大力发展生产力,助力高效采集.(转载请注明出处https://www.cnblogs.com/1024bytes/p/15477374.html) 本篇随笔分为五个部分: 一.获取QGIS3.1 ...
- 解决Ubuntu 12.10中ZIP文件名乱码的方法
转摘源地址:http://blog.csdn.net/jiangxinyu/article/details/8206395 安装(12.04及以上): 代码: sudo apt-get install ...
随机推荐
- 【几何+模拟】二次元变换 计蒜客 - T3213
题目 aslky 有一个 n×n 的矩形,每个位置上都有一个数,有 q 次操作,每次他会让你上下翻转 (UD),左右反转 (LR),顺时针旋转 90∘(SZ),逆时针旋转 90∘(NZ),请你输出最后 ...
- js的传递方式
回头过来复习一下. 从一个变量向另一个变量复制的时候,复制过去以后,都是单独独立的变量,当你改变其中一个的时候,并不会影响另一个变量.他们只是value相同而已: var a = 1; var b= ...
- Spring事务处理时自我调用
1.预备知识 aop概念请参考[http://www.iteye.com/topic/1122401]和[http://jinnianshilongnian.iteye.com/blog/141859 ...
- Java基础(二)流程语句与数组
Java流程语句详解:https://www.cnblogs.com/jiajia-16/p/6008200.html Java数组详解:https://www.cnblogs.com/jiajia- ...
- 第四章 常用API(下)
4.1.String类 描述:该类代表字符串 构造方法: 方法 描述 public String() 初始化构造一个空白字符串 public String(char[] value) 通过字符数组初始 ...
- Python里的目录方法
Python里的目录_文件.目录相关的方法: mkdir(目录名): 在当前目录下创建新的目录 程序: import os # 创建新的目录-包结构 os.mkdir('新目录-test') getc ...
- 《闲扯Redis九》Redis五种数据类型之Set型
一.前言 Redis 提供了5种数据类型:String(字符串).Hash(哈希).List(列表).Set(集合).Zset(有序集合),理解每种数据类型的特点对于redis的开发和运维非常重要. ...
- Python os.dup2() 方法
概述 os.dup2() 方法用于将一个文件描述符 fd 复制到另一个 fd2.高佣联盟 www.cgewang.com Unix, Windows 上可用. 语法 dup2()方法语法格式如下: o ...
- Blob分析之bottle.hdev
* 分割读取啤酒瓶子上的数字* bottle.hdev: Segment and read numbers on a beer bottle* 第0步* Step 0: Preparations*定义 ...
- Python安装2 —— Pycharm2019.3.3的安装
本文内容皆为作者原创,如需转载,请注明出处:https://www.cnblogs.com/xuexianqi/p/12378617.html 一:什么是Pycharm PyCharm是一种Pytho ...