Я пытаюсь загрузить видео на сервер через TCP / IP, используя GCDAsyncSocket
.Иногда сокет отключается с ошибкой, которую я не смог устранить:
2011-12-17 11: 39: 25.073 Hadza [433: 707] socketDidDisconnect, ошибка: Error Domain =NSPOSIXErrorDomain Code = 12 «Невозможно выделить память» UserInfo = 0x2aa260 {NSLocalizedFailureReason = Ошибка при записи (), NSLocalizedDescription = Невозможно выделить память}
Я искал везде, но не вижучто является причиной этого, как исправить это или обойти эту проблему.
Поток, который приложение использует для загрузки файла, выглядит следующим образом:
- Запись на сервер (amedia_id)
- Чтение знака ACK с сервера
- Чтение количества отправленных байтов
- Запись видео из байтов, отправленных в конец
- Чтение в ожиданиисигнал ACK (это означает, что загрузка прошла нормально)
- Если все прошло нормально, закончите.Если произошла ошибка, перезапустите с 1 или 3 в зависимости от ошибки.