【发布时间】:2011-08-21 07:27:00
【问题描述】:
我有一个自定义导航控制器,所以我制作了自己的后退按钮
-(void)navigateBack{
[self.navigationController popViewControllerAnimated:YES];
}
在视图确实加载时,我使用 ASINetworkQueue 请求了许多图像
-(void)sendRequest:(NSURL *)url withParams:(NSDictionary *)params andSelector:(NSString *)selector{
NSString *jsonString = [params yajl_JSONString];
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
[request setPostValue:jsonString forKey:@"json"];
[request setTimeOutSeconds:15];
[[self networkQueue] setDelegate:self];
[[self networkQueue] setRequestDidFinishSelector:NSSelectorFromString(selector)];
[[self networkQueue] setRequestDidFailSelector:@selector(asiRequestFailed:)];
[[self networkQueue] addOperation:request];
[[self networkQueue] go];
}
基本上,每当我发送 HTTP 请求时,我都会执行 [self sendRequest:]。 当我转到这个视图控制器,然后在所有图像下载之前按回,我得到一个 EXC_BAD_ACCESS,它指向 ASIHTTPFormRequest 尝试执行选择器的行。我试着把
[networkQueue cancelAllOperations];[self setNetworkQueue:nil];
在我的 dealloc 方法中,我在此之前和之后放置了断点,我可以从 GDB 中看到队列中没有更多请求,但错误一直显示。我错过了什么吗?
谢谢
【问题讨论】:
标签: iphone objective-c download asihttprequest exc-bad-access