Завершить программу из отдельного потока в Objective-C? - PullRequest
0 голосов
/ 05 февраля 2012

У меня есть отдельный поток, выполняющий функцию. Функция проверит, может ли она что-то сделать, и, если это невозможно, я хочу, чтобы программа проинформировала пользователя и закончила работу.

Я знаю о exit (0). Я не был уверен, работает ли он во всех потоках или только в основном.

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

1 Ответ

1 голос
/ 05 февраля 2012

Вы можете использовать синглтон для NSThread

[[NSThread mainThread] exit]

В противном случае, если вы используете Grand Central Dispatch, вы можете получить доступ к главной очереди и запустить ее.

dispatch_async(dispatch_get_main_queue(), ^{
    exit(0);
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...