我有一个相当简单的NSURLConnectionDelegate
包装类处理简单的HTTP请求我的应用程序。iOS ARC最佳实践火和忘记ASYNC包装
当这些请求返回时,它们会调用我的主视图控制器类中的后续委托方法来通知我结果是否成功。
如果我把一个发射后不管的做法在我的视图控制器使用方法内这些包装,像这样:
- (void) Foo {
MySimpleRequest* request = [[MySimpleRequest alloc] initWithDelegate:self];
[request send];
}
只要Foo
的退出,request
似乎被清理通过ARC和后续的委托方法永远不会被调用。
如果我将我的request
指针移动到类级别,它会挂起并成功。
这是推荐的方法吗?我是否必须让成员变量保持每个请求,还是有一种方法可以在请求返回之前保持其生命周期一直活着?