Использование NSThread таким образом означает, что метод "myMethod" вызывается в фоновом потоке одновременно с остальной частью кода.Это эквивалентно тому, что вы, возможно, также видели:
[self performSelectorInBackground:@selector(myMethod) withObject:nil];
Если метод не вызывается (или, кажется, не вызывается), это может быть связано с проблемами параллелизма, то есть с тем, чтопорядок выполнения этого и последующих методов в основном потоке не гарантирован, поэтому вы ожидаете, что он будет вызван раньше, чем на самом деле.
Если вы скажете:
[NSThread detachNewThreadSelector:@selector(methodA) toTarget:self withObject:nil];
[self methodB];
Тогда methodA и methodB будут одновременно работать , и нет никакой гарантии, что methodA завершит работу перед methodB.