Используете потоки для выполнения нужной работы. Хотите использовать нотификацию о каких то событиях между потоками ( для связи с тем же GUI, выброс ошибок, передача данных и etc ). В этом случае нужно корректно отсылать такие сообщения в контексте главного потока. Проблема может проявится не сразу, в не ожиданный момент.
- #pragma mark post thread safe notifity messages
- - (void) sendErrorNotification : (NSString *) message
- {
- [ [ NSNotificationCenter defaultCenter ] postNotificationName : @"NotifyUser"
- object : message ];
- }
- - (void) postSafeNotifityMessage : (NSString *) message
- {
- [ self performSelectorOnMainThread : @selector(sendErrorNotification:)
- withObject : message
- waitUntilDone : NO ];
- }
- Пример посылки сообщения об ошибки сети.
- - (void) connection : (NSURLConnection *) connection didFailWithError : (NSError *) error
- {
- [ self postSafeNotifityMessage : [ error localizedDescription ] ];
- }
Комментариев нет:
Отправить комментарий