如何等待块执行完成?我在 HTTP 请求的上下文中对此感兴趣,其中成功响应在一个块中执行。这尤其发生在 AFNetworking 中。
我已经找到
dispatch_sync
但不知道如何使用它。
如何等待块执行完成?我在 HTTP 请求的上下文中对此感兴趣,其中成功响应在一个块中执行。这尤其发生在 AFNetworking 中。
我已经找到
dispatch_sync
但不知道如何使用它。
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];