Приложение вылетает, когда несколько файлов "записывают в файл" одновременно - PullRequest
1 голос
/ 16 июля 2009

Вот мой код.

- (void) connectionDidFinishLoading: (NSURLConnection *) connection

{
    //Each connection has its own "downloadedData".
    BOOL writeFlag = [downloadedData writeToFile: filePath atomically: YES];
}

У меня есть несколько NSURLConnections одновременно. Каждое соединение соответствует одному элементу загрузки. Приложение завершается сбоем, когда несколько загрузок завершаются одновременно. Этот метод потокобезопасен?

Там написано:

_serverConnectionDiedNotification. Info -- notification=NSConcreteNotification 0x11d90470{name = AVController_ServerConnectionDiedNotification; object = <AVController: 0x11d855a0>},
 AVController = <AVController: 0x11d855a0>,currentTime = 0.00

Program received signal:  “0”.
warning: check_safe_call: could not restore current frame

СПАСИБО!

Ответы [ 2 ]

1 голос
/ 17 июля 2009

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

1 голос
/ 16 июля 2009

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

Я использую библиотеку ASI-HTTPRequest для своих запросов http. Легко делать правильные асинхронные запросы. Вы можете найти это полезным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...