AFHTTPSessionManager GET:... не выполняет свои блоки, когда группа отправки ожидает. dispatch_group_wait действительно ждет "НАВСЕГДА". В моем коде @"все готово" никогда не бывает.
Как я могу заставить его работать?
(извините, как я вижу, большинству людей интересно узнать, почему здесь используются группы отправки. Причина в том, чтобы выполнять запросы в цикле и ждать, пока будет получен последний ответ. Я намеренно не показал свой цикл в коде, потому что цикл не влияет на то, что блоки не выполняются)
dispatch_group_t group = dispatch_group_create();
NSString *urlString = @"someURLForExampleReturnJSON";
dispatch_group_enter(group);
[self.sessionManager GET:urlString parameters:nil progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject)
{
NSLog(@"success block execution");
dispatch_group_leave(group);
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
NSLog(@"failure block execution");
dispatch_group_leave(group);
}];
dispatch_group_wait(group, DISPATCH_TIME_FOREVER);
NSLog(@"all done");
dispatch_group
? не могли бы вы объяснить, что вам здесь нужно? почему вы используетеdispatch_group
? - person CodeChanger   schedule 20.10.2016