我有以下代码向我的api发出请求:
-(void)makeApiCall:(NSString *)function params:(NSDictionary *)params notificationName:(NSString *)notificationName
{
NSURL *url = [NSURL URLWithString:kBaseUrl];
AFHTTPClient *httpClient = [[AFHTTPClient alloc] initWithBaseURL:url];
httpClient.parameterEncoding = AFFormURLParameterEncoding;
NSMutableURLRequest *request = [httpClient requestWithMethod:@"POST" path:[NSString stringWithFormat:@"%@/%@",kApiBaseUrl,function] parameters:params];
NSOperationQueue *queue = [[NSOperationQueue alloc] init];
[NSURLConnection sendAsynchronousRequest:request queue:queue completionHandler:^(NSURLResponse *response, NSData *data, NSError *error) {
NSLog(@"complete");
//..My code
}];
}
我的问题是,在NSLog(@“完成”)之后,应用程序被冻结了5秒钟。 我该如何解决这个问题?
感谢。
答案 0 :(得分:1)
queue
的{{1}}参数是其上的队列
调度完成处理程序块。如果您在完成时执行任何UI更新
处理程序然后您可能应该使用
sendAsynchronousRequest