У меня есть метод myButtonAction
, который выполняет некоторые тяжелые вычисления, которые мне нужно запускать в фоновом потоке, в то время как я загружаю представление, указывающее «Выполнение задачи» в основном потоке. Как только фоновый поток завершит выполнение метода, мне нужно удалить представление «прогресс задачи» и загрузить другое представление в основной поток.Как обеспечить синхронизацию потоков
[self performSelectorInBackground:@selector(myButtonAction) withObject:nil];
[self performSelectorOnMainThread:@selector(LoadView) withObject:nil waitUntilDone:YES];
Проблема я столкнулся в том, что, перед тем myButtonAction
завершает выполнение, то LoadView
завершает свое выполнение. Как я могу убедиться, что LoadView
запускает выполнение только после завершения myButtonAction
.
Примечание: myButtonAction
имеет определение метода в другом классе.
'myButtonAction' находится в другом классе, который я не должен редактировать. –
@XaviValero - проверить отредактированный пост, а также, если хотите, вы можете пойти на GCD. – rishi