Tome uma ação quando dois NSFetchRequests separados tiverem concluído

Estou usando um banco de dados remoto com Core Data e quando executo as solicitações de busca a seguir, dependendo da conexão com a Internet, isso pode levar algum tempo. Gostaria de monitorar essas duas solicitações e, quando elas estiverem concluídas, sejam elas bem-sucedidas ou malsucedidas, gostaria de acionar outro método.

FetchRequest 1:

 [self.managedObjectContext executeFetchRequest:fetchRequest1 onSuccess:^(NSArray *results) {
        //Succcess
        [self.refreshControl endRefreshing];

    } onFailure:^(NSError *error) {
        [self.refreshControl endRefreshing];
    }];

FetchRequest 2:

 [self.managedObjectContext executeFetchRequest:fetchRequest2 onSuccess:^(NSArray *results) {
        //Succcess
        [self.refreshControl endRefreshing];

    } onFailure:^(NSError *error) {
        [self.refreshControl endRefreshing];
    }];

Eu gostaria de esperar até que as solicitações de busca1 e2 ambos estão completos antes de chamar outro método.

Eu posso usarNSOperationQueue monitorar os dois blocos? Se não, qual é a melhor maneira de saber quando os dois blocos foram concluídos?

questionAnswers(1)

yourAnswerToTheQuestion