Нет, все не в порядке. Не делай этого.
iOS может даже убить ваше приложение в процессе. Кроме того, посмотрите на обратные вызовы, поскольку они стали следующим шагом в вашем серийном исполнении.
Процессор нуждается в этих циклах, чтобы делать другие вещи, не быть хулиганом!
INSIGHT:
Как @EricD сказал, если исполнение не может по какой-то причине, что нить теряется, пока вы не выйдете из приложения и младший матрос утверждает он.
Этот поток является ценным ресурсом, который не должен быть потрачен впустую, и многое другое более ценным в мобильных операционных системах как iOS.
Процессоры для iPhone не такие мощные, как современные процессоры Desktop или процессоры GPU, которые могут создавать до сотни тысяч потоков.
Если вы используете семафор , вы просыпаетесь, чтобы спросить этот поток через какое-то время, и если условия не были выполнены, вы снова переспали. Обычно это происходит в мс время, но все же, какое-то время процессор обрабатывает что-то бесполезное.
MORE ОЧИСТИТЬ
При определении обратного вызова, как если бы вы были спать, и вы говорите с кем-то.
Не звоните мне, я позвоню вам, когда я буду готов.
Вместо этого, используя семафор, как:
это нормально, если вы звоните мне 1000 ..0 раз, чтобы спросить меня, готов ли я пойти
Накладные расходы в этом случае очевидны ... вам обычно нужно время, чтобы проснуться и снова спать. Это впустую время процессора
Имейте в виду, что в лучшем случае вы используете семафор, которые ставят тему в сон на некоторое время, а затем еще раз спросить, если это OK, чтобы продолжить.
Если это не так, то эта нить используется все циклы процессора возложенные на него, чтобы спросить вас, если это нормально, чтобы продолжить, что 100% использование процессора в этом потоке оценки просто в состояние.
Возможного дубликат [запрос Синхронного URL на Swift 2] (http://stackoverflow.com/questions/31557688/synchronous-url-request-on-swift-2) – brimstone