私はこれを実際よりも難しくしているに違いありません...または、オンラインで見たソリューションを間違って実装しています。
ループして結果を順番に辞書または配列にプッシュしたい URL の配列があります。次のリクエストを実行する前に辞書が更新されるのを待つにはどうすればよいですか? 基本的に、バックグラウンド スレッドで同期的に呼び出しを行いたいと考えています。
これが私がダウンロードを呼び出す場所です:
for (NSString *path in paths) {
NSURLSession *session = [NSURLSession sessionWithConfiguration [NSURLSessionConfiguration defaultSessionConfiguration]];
NSURLRequest *request = [[NSURLRequest alloc] initWithURL:[NSURL URLWithString:path]
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:10];
NSURLSessionDataTask *task = [session dataTaskWithRequest:request
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
if (error)
{
}
else
{
NSError *parsingError = nil;
NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:data
options:NSJSONReadingAllowFragments
error:&error];
if (parsingError)
{
}
else
{
[myDictionary addObject:dict];
}
}
}];
[task resume];
}