Ответ 1
[self performSelectorOnMainThread:@selector(doSomething:)
withObject:object
waitUntilDone:NO]
Будет выполнять селектор справа, когда он вызывается. Это то, что вам нужно использовать, если вы хотите повлиять на пользовательский интерфейс из фонового потока. Если вы скажете YES
- waitUntilDone
, он заблокирует поток до тех пор, пока метод не завершится.
mainQueue
добавляет этот блок в очередь операций mainthread, но не гарантирует, когда он будет выполнен. В этой очереди могут быть другие элементы, ожидающие выполнения.