Jsem nový Xcode a ObjectiveC a stavím non-UI nástroj. Zjistil jsem, můj hlavní vlákno bude viset navždy a nikdy probuzení, když jsem pomocí semaforů v hlavním vlákně
dispatch_semaphore_t waitSem = dispatch_semaphore_create(0);
dispatch_async(dispatch_get_main_queue(), ^{
// do something else
dispatch_semaphore_signal(waitSem);
});
dispatch_wait(waitSem, DISPATCH_TIME_FOREVER);