在dealloc方法里只应该释放所有对象并解除订阅的KVO和通知,不要有多余的操作.
如果对象拥有一些开销大或者系统内稀缺的资源,那么等到dealloc方法再释放是不适合的.通常是实现另一个清理对象的方法,在使用完这些资源后就调用该方法清理资源.
如果在dealloc里调用其他方法容易导致各种应用崩溃的问题,比如异步方法执行后,要回调对象时,对象已经被摧毁了,那么回调操作就好出错.
并且调用dealloc的线程并不一定是dealloc里面方法所需要的线程,例如主线程.
在dealloc方法里只应该释放所有对象并解除订阅的KVO和通知,不要有多余的操作.
如果对象拥有一些开销大或者系统内稀缺的资源,那么等到dealloc方法再释放是不适合的.通常是实现另一个清理对象的方法,在使用完这些资源后就调用该方法清理资源.
如果在dealloc里调用其他方法容易导致各种应用崩溃的问题,比如异步方法执行后,要回调对象时,对象已经被摧毁了,那么回调操作就好出错.
并且调用dealloc的线程并不一定是dealloc里面方法所需要的线程,例如主线程.