вы можете попробовать: performSelector:onThread:withObject:waitUntilDone:
на self
Насколько я понимаю, вы хотите синхронизировать потоки вставки и отображения, так что отображение вызывается после вставки (startThread), и сообщать о вставке (startThread) (не уверен, правильно ли я понял).
Если я правильно это сделаю, что-то вроде этого должно сработать (не проверено, возможно, потребуются небольшие изменения):
[self insert];
NSThread* myThread = [[NSThread alloc] init];
[self performSelector:@selector(display) onThread:myThread withObject:nil waitUntilDone:YES];
//myThread stopped, check its return status (maybe set some variables) and display error message
это был бы другой способ:
m_bRunThread = YES;
[self insert];
if(m_bRunThread)
{
NSThread* myThread = [[NSThread alloc]initWithTarget:self selector:@selector(display) object:theConditionLock];
[myThread start];
}
while(m_bRunThread){//check if display is still running
[NSThread sleepForTimeInterval:0.5];
}
//display thread stopped