2016-02-16 9 views
0

У меня очень странная ошибка.NSLog Context Causing App Stuck

Так что я пытаюсь распечатать свой NSManagedObjectContext контекст. В прошлом мое приложение отлично работало. Но совсем недавно, когда мое приложение застряло в моем нижнем коде:

NSLog("%@", context); 

У кого-нибудь есть опыт работы со мной? Я могу удалить эту строку точно, но мне просто интересно, почему это происходит.

+1

"Got stucked"? Вы можете объяснить? – Larme

+0

Да, приложение прикладывается, не переходит к следующему коду и без ошибок. – Rendy

+0

Нет SIG_ABORT или EXC_BAD_ACCESS или что-нибудь вообще? Нет точки останова? – Larme

ответ

0

потому что контекст не из вашего потока, а его печать на другой поток обращается к нему и вызывает тупик!

контекст arent действительно безопасен для использования в нескольких потоках/очередях

+0

Да, на самом деле я печатаю его внутри блока '[operation setWillSendRequestForAuthenticationChallengeBlock: \t^(NSURLConnection * connection, NSURLAuthenticationChallenge * challenge)' '' '' '' '' AFHTTPRequestOperation'. Так что небезопасно, если я хочу получить некоторую ценность от моего объекта Core Data внутри этого блока? – Rendy

+0

проверьте, является ли поток тем же самым потоком, что и тот, на котором вы создали контекст (используйте 'dispatch_get_current_queue() для отладки!) –