Выход из NSThread - PullRequest
1 голос
/ 27 мая 2009

как выйти из потока, пока он в рабочем режиме ... когда я использую NSThread, мое приложение зависает ... Может кто-нибудь мне помочь ? что я могу использовать здесь, чтобы выйти из нити или закрыть нить

Спасибо. Это мой первый пост.

Ответы [ 2 ]

6 голосов
/ 27 мая 2009

Процедура, которую вы ищете: return.

Поток завершится, когда завершится функция, с которой вы его запустили. Вам не нужно завершать NSThread; он справится с этим сам. Вам просто нужно вернуться из вызова функции.

0 голосов
/ 10 июня 2016

Я предполагаю, что вы ищете способ отменить тему, как только вы ее запустили. Это все в настройке. Вот пример:

  • (

    void) doCalculation { / * Сделайте свой расчет здесь * / }

    • (void) analysisThreadEntry { NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; NSUInteger counter = 0; while ([[NSThread currentThread] isCancelled] == NO) { [Самооценка]; Счетчик ++; if (counter> = 1000) {break; }} [выпуск пула]; } приложение: (UIApplication *) приложение
    • (BOOL) didFinishLaunchingWithOptions: (NSDictionary ) launchOptions { / Начать тему * / [NSThread detachNewThreadSelector: @selector (computingThreadEntry) toTarget: self withObject: nil]; // Переопределить точку для настройки после запуска приложения. [self.window makeKeyAndVisible]; вернуть ДА; }

В этом примере цикл обусловлен тем, что поток находится в неотменяемом состоянии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...