Приложение вылетает при альтернативных запусках при использовании NSThread для загрузки карты - PullRequest
0 голосов
/ 07 декабря 2010

Я использую NSThread для одновременной работы с основным потоком. Я развернул приложение на iPhone 3G Приложение работает, как и ожидалось при первом запуске.

Но, когда я закрываю приложение и запускаю его снова, оно немедленно падает. В следующий раз, когда я запускаю приложение, оно снова работает нормально. это повторяется.

Понятия не имею, почему ранний запуск приложения влияет на следующий запуск. Пожалуйста, помогите!

Вот мой код:

NSThread *th=[[NSThread alloc]initWithTarget:self selector:@selector(loadMap) object:nil];
[th start]; 

-(void) loadMap{

    NSAutoreleasePool * pool=[[NSAutoreleasePool alloc]init];

    //code to load MKMapView

    [pool release];

}

Заранее спасибо

Приложение не будет зависать, если я открою другое приложение карты между двумя запусками! Также приложение работает очень хорошо, если я удаляю поток и загружаю карту последовательно

1 Ответ

0 голосов
/ 07 декабря 2010

Я думаю, вам следует потратить время на чтение справочника по программированию потоков , о главе Управление потоками .

...