coc*_*est 0 iphone memory-management nsurlconnection nszombie
我目前异步使用NSURLConnection几个UIViews(每个视图句柄NSURLConnection作为委托).我遇到的问题是当用户切换视图太快并且委托成为NSZombie应用程序崩溃时 - 这是NSURLConnection不再有活代委会.那么,第一个问题是,是否有办法绕过这个?
第二个问题很简单 - 我该如何处理NSZombie?简单if(myObject != nil)..根本不起作用.
您需要取消对NSURLConnection你处理它的委托之前.只需在您的NSURLConnection中保留对NSURLConnection的引用UIView,作为委托和调用[urlConnection cancel].
释放消息后,如果继续使用该指针,则需要将指针设置为nil.举个例子:
id myObject = [[SomeObject alloc] init];
/* Some code */
[myObject release];
myObject = nil;
/* Some more code */
if (myObject != nil) {
[myObject doSomething];
}
Run Code Online (Sandbox Code Playgroud)
但请注意,发送消息是有效的,nil因此您无需安全保护消息发送.如果,它根本不会有任何影响myObject == nil.