dispatch_get_global_queue vs dispatch_get_main_queue

Zaczynając uczyć się o podstawowych danych i dispatch_async. Istnieje blok kodu, który pobiera url obrazu z zestawu danych i ustawia go na model podstawowych danych, jak poniżej

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
                NSString *urlString = [[[photoDictionary valueForKey:@"images"] objectAtIndex:0] valueForKey:@"url"];
                NSData *imageData = [NSData dataWithContentsOfURL:[NSURL URLWithString:urlString]];
                dispatch_async(dispatch_get_main_queue(), ^{
                    [photoModel setValue:imageData forKey:@"photoImageData"];

Czy ktoś może mi wyjaśnić, dlaczego używamydispatch_get_global_queue dla zewnętrznego dispatch_async idispatch_get_main_queue dla wewnętrznego dispatch_async.

questionAnswers(4)

yourAnswerToTheQuestion