У меня возникли проблемы с модульным тестированием какого-то грандиозного централизованного диспетчерского кода со встроенной структурой модульного тестирования Xcode, SenTestingKit. Мне удалось сварить мою проблему с этим. У меня есть модульный тест, который создает блок и пытается выполнить его в основном потоке. Однако на самом деле блок никогда не выполняется, поэтому тест зависает, потому что это синхронная отправка.
- (void)testSample {
dispatch_sync(dispatch_get_main_queue(), ^(void) {
NSLog(@"on main thread!");
});
STFail(@"FAIL!");
}
Что такого в тестовой среде, что заставляет это зависать?
dispatch_sync(dispatch_get_main_queue()
, пока в основном потоке не создадите мертвую блокировку !? - person Honey   schedule 27.12.2016