
随机性强、难以定位
不是必现的
提高野指针的崩溃率
对象内存填充
hook dealloc
野指针指向的地址并不一定会crash(如果和之前的对象是同一种类型的)
系统并没有让这块内存马上不能访问 可能分配给了其他对象
写上了可以访问的数据 写上了不可访问的数据
填充不可访问的数据
访问野指针并不会crash,只有野指针指向的地址被写上了有问题的数据才会crash
看到的crash栈很可能和出错的代码没有关系
让系统不在这块内存上乱放东西
不free,不释放
1.定位野指针
2.解决野指针
我们可以通过开启“僵尸对象”来定位野指针问题,开启“僵尸对象”之后所有本应释放的对象都不会被释放掉,当向一个野指针指向的地址发送消息后会报错:给某个僵尸对象发送了消息。
网友评论