如何等待块执行完成?我对HTTP请求上下文中的这一点很感兴趣,在HTTP请求中,成功响应是在块中执行的。特别是在AFNetworking中会发生这种情况。
我已经找到了dispatch_sync,但不确定如何使用它。
发布于 2013-03-21 14:53:14
FSNetworking是我见过的最好的HTTP库。
FSNConnection支持块执行才能完成。
下面是一个例子
NSURL *url = ...; // required
NSDictionary *headers = ...; // optional
NSDictionary *parameters = ...; // optional
FSNConnection *connection =
[FSNConnection withUrl:url
method:FSNRequestMethodGET
headers:headers
parameters:parameters
parseBlock:^id(FSNConnection *c, NSError **error) {
return [c.responseData dictionaryFromJSONWithError:error];
}
completionBlock:^(FSNConnection *c) {
NSLog(@"complete: %@\n error: %@\n parseResult: %@\n", c, c.error, c.parseResult);
}
progressBlock:^(FSNConnection *c) {
NSLog(@"progress: %@: %.2f/%.2f", c, c.uploadProgress, c.downloadProgress);
}];
[connection start];https://stackoverflow.com/questions/15541124
复制相似问题