2016-04-10 9 views
0

Я получаю сообщение об ошибке, когда Iam меняет механизм автозапуска из фонового потока, есть ли способ узнать, какой блок кода делает это предупреждение? или мне просто нужно искать его самостоятельно? Спасибо.Изменение пользовательского интерфейса из фоновой темы

+0

Вы можете установить точки останова в xCode, как это, и, возможно, он покажет вам, что блок кода делает ваше предупреждение. [введите описание изображения здесь] (http://i.stack.imgur.com/YLZVN.png) –

+0

, если вы обновляете ограничения в своем коде, просто поместите их в блок mainQueue NSOperationQueue. –

ответ

0

Возможно есть лучший ответ, но я хотел бы начать, поставив

для Swift:

assert(NSThread.isMainThread(), "Expected code to be called on main thread"); 

для Objective-C:

NSAssert([NSThread isMainThread], @"Expected code to be called on main thread"); 

ко всем разделам вашего кода, который вы» с подозрением.

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


Эта ошибка является ошибкой или является исключением? Если это исключение, вы можете попытаться поймать его с помощью контрольной точки исключения, как здесь: How to debug “Collection was mutated while being enumerated” errors and like, when Xcode does not provide me with enough information??


После посмотрев на ваше точное сообщение выглядит то, что вам нужно:

Этот код PSPDFUIKitMainThreadGuard вызывает утверждения по UIKit доступа вне основного потока

взяты из iOS9 - This application is modifying the autolayout engine from a background thread — where?.

+0

У меня есть проект с почти 30K строк кода: D, я не могу это сделать – user3703910

+0

Является ли эта ошибка ошибкой или это исключение? Если это исключение, вы попытались поймать его с помощью контрольной точки исключения, например [здесь] (http://stackoverflow.com/a/16072549/598057)? –

+0

это предупреждение, система выводит на консоль xcode следующее: Это приложение изменяет механизм автозапуска из фонового потока, что может привести к повреждению двигателя и странным сбоям. Это приведет к исключению в будущей версии – user3703910

Смежные вопросы