Ошибка POSIX 12 («Невозможно выделить память») при загрузке файлов с iPhone

Я работаю над приложением для iPhone, которое включает загрузку полных фотографий с камеры (обычно от 1,5 до 2,0 МБ каждая), а также их миниатюр (намного меньшего размера) в Amazon S3.

Миниатюры всегда успешно выгружаются, но иногда не загружаются полные изображения, а когда они терпят неудачу, они не работают с кодом ошибки POSIX 12, также известным как ENOMEM. Тем не менее, я добавил код отладки для вывода объема свободной памяти при возникновении ошибки, и всегда достаточно свободного места, обычно более 100 МБ.

Кроме того, ошибка возникает чаще, когда происходит загрузка через 3G и меньше, когда это через Wi-Fi - что кажется странным, так как запрос загружается мало, а загружаемый файл уже находится в памяти (я также пробовал передавать его с диска без каких-либо улучшений).

I Я пытался загрузить файл с помощью NSURLConnection, функций Foundation CFHTTP * и библиотеки ASIHTTPRequest, но, тем не менее, ошибка возникает с той же частотой. Еще более странно, Все, что показал мой поиск в Google, это то, что конечные пользователи иногда получают код ошибки 12 из Safari - я не видел, чтобы разработчики iOS упоминали об этом. Я работаю с унаследованной базой кода, поэтому, возможно, с ней что-то не так, но я даже не уверен, что искать. Приветствуется любое понимание!

9
задан Alex Michaud 9 February 2011 в 04:01
поделиться