I am trying to figure out if this code is updating the UI on the main thread. This code is in a class I made specifically for downloading the JSON feed. After getting the data, I parse it to return an array I will use to update the UI, and then let the delegate know the data is ready. My delegate, a view controller, will use this array to update the UI. Do I need to do the -parser:didFinishParsingWithResults:
in a dispatch_get_main_queue
block? Or is that not necessary since I am updating UI in the view controller class and not this class? Thank you!
__block NSArray *results;
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
NSData *responseData = [NSData dataWithContentsOfURL:url];
results = [self parseData:responseData];
[self.delegate parser:self didFinishParsingWithResults:results];
});