Из документов Apple:
Обновление пользовательского интерфейса в потоке, отличном от основного, является распространенной ошибкой, которая может привести к пропущенным обновлениям пользовательского интерфейса, визуальным дефектам, повреждению данных и сбоям. source
Так что может аварийно завершить работу, но также не может завершиться аварийно.Это может обновить интерфейс или нет.Это может произойти сбой сразу при вызове кода;это может произойти сбой в следующем цикле выполнения или может произойти сбой через несколько минут.Это может вызвать странный интерфейс, который заставляет вас говорить WTF.Короче говоря, его поведение не определено.То, что делает, может усложнить поиск и исправление ошибки.
Если вы спрашиваете, какого именно поведения следует ожидать при этом.Ответ таков: в среде отладки вы должны ожидать, что средство проверки основного потока перехватит его и вызовет сбой с хорошим отчетом о сбое.Если это производственная сборка, вы можете ожидать некоторые сбои, которые выглядят следующим образом: Приложение аварийно завершает работу с обновлением пользовательского интерфейса во вторичном потоке , но они могут выглядеть по-другому.Если у вас небольшая база пользователей, вы можете не увидеть сбоев, но приложение все равно будет очень глючным.