Вы не предоставили никакого кода, поэтому я просто напишу, как можно разделить вашу задачу на два разных потока.
Для перемещения анимации в фоновом потоке, чтобы она не прерывалась, используйте:
[self performSelectorInBackground:@selector(METHOD_NAME) withObject:nil];
пример:
-(void)doStuff{
//Whatever you call here will be executed on main thread.
NSLog(@"This is main thread");
[self performSelectorInBackground:@selector(animate) withObject:nil];
}
-(void)animate{
//Whatever you call here will be executed on a background thread.
NSLog(@"This is background thread");
}
Не злоупотребляйте потоками, они используют много ресурсов. Используйте их, когда это необходимо.