NSURLRequest с входным потоком HTTPBody: поток отправляет событие перед открытием

Я хочу отправить большой объем данных на сервер, используяNSURLConnection (а такжеNSURLRequest). Для этого я создаю связанную паруNSStreams (используяCFStreamCreateBoundPair(...)). Затем я передаю входной поток вNSURLRequest (-setHTTPBodyStream:) и запланируйте выходной поток в текущем цикле выполнения. Когда цикл выполнения продолжается, я получаю события для отправки данных, и поток ввода отправляет эти данные на сервер.

Моя проблема в том, что это работает только тогда, когда данные помещаются в буфер между спаренными потоками. Если данные больше, то каким-то образом входной поток получает событие (я полагаю, «доступны байты»), но NSURLConnection еще не открыл входной поток. Это приводит к печатанию сообщения об ошибке, и данные не отправляются.

Я пытался поймать это в моем-stream:handleEvent: метод, просто возвращающий, если входной поток еще не открыт, но тогда мой выходной поток получает событие закрытия потока (вероятно, потому что я никогда не отправлял данные, когда мог).

Итак, мой вопрос: как правильно использовать связанную пару потоков с NSURLConnection?

(Если это имеет значение: я занимаюсь разработкой на платформе iOS)

Любая помощь приветствуется!

Ура, Маркус

Ответы на вопрос(1)

Ваш ответ на вопрос