Стоимость создания нового NSConnection на iPhone - PullRequest
4 голосов
/ 21 августа 2010

Кто-нибудь знает, как дорого TCP-соединение на iPhone? Например, если мне нужно загрузить 8-10 небольших файлов (2-6 КБ) с веб-сервера, имеет ли смысл создавать 8-10 NSConnection запросов или было бы лучше сделать один запрос на загрузку 8-10 файлов одновременно (если сервер поддерживает такие запросы)?

Ответы [ 3 ]

2 голосов
/ 08 сентября 2010

Не уверен, насколько дорогая операция ...

Лично я бы порекомендовал использовать ASIHTTP. Это класс-обертка, разработанный для чудесной обработки таких ситуаций. У него даже есть очередь, которая может ставить в очередь все ваши вызовы API, затем запускать асинхронно в отдельных потоках и даже отслеживать ход выполнения каждого.

http://allseeing -i.com / ASIHTTPRequest /

1 голос
/ 15 сентября 2010

Я выполнил следующий тест.Я запустил простой веб-сервер, который может обрабатывать только два типа запросов:

  • возвращать изображение по номеру (всего 8 изображений)
  • возвращать все изображения, упакованные водин файл

Затем я написал простое приложение для iPhone, которое запрашивало 8 изображений - одно изображение на запрос и 8 изображений на запрос как один файл.

Результаты оказались довольно неожиданными для меня, потому что среднее время для одного изображения, когда я запрашивал все изображения в виде одного файла, было в 5-7 раз быстрее, чем при отдельном запросе.

1 голос
/ 23 августа 2010

Если вы говорите об HTTP и сервер поддерживает HTTP keep-alive, я бы предпочел использовать один объект подключения.

В любом случае вы можете протестировать оба решения и сообщить нам результаты:)

...