iOS dealloc 不被调用的问题

最近项目中老是无缘无故的出现一下奔溃。查看一下堆栈信息,指针的指向都有,但还是奔溃。所以第一个怀疑出现野指针引起的问题。然后调试代码中的一下dealloc函数。好多对象在释放之后都没掉用。顿时吓出一身冷汗。经过一番查找。主要总结了3点
1、类中用了NSTimerh或调用了perfomSelector函数。当对象要销毁前。先要暂停NSTimer 或

[NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(test:) object:nil];

2、Block问题。这里复制一段代码。

iOS dealloc 不被调用的问题

3、类中用了其他了类做属性时。要用assign,而不是strong,这一点隐藏得比较深。

iOS dealloc 不被调用的问题

这个superView 是外面传进来的。相当于代理。用strong的话会造成引用计数加1.

上一篇:Python爬虫入门教程:豆瓣Top电影爬取


下一篇:项目属性-->生成事件-->后期生成事件命令行