![]() |
выбор последовательной или параллельной загрузки
и так возник вопрос:
есть флешка которая может и должна грузить огромное количество небольших картинок, понятное дело что не без остановки, она запрашивает определеные когда ей это нужно ну и зачищает неиспользуемые... вопрос как лучше их загружать параллельно: то есть закидываем кучу лодеров в массив и вешаем на каждый лодер слушатель или кидаем в массив так сказать наши запросы инициируем лодер, по завершению загрузки первого элемента, переходим на второй и так далее вот и вопрос: какой вариант предпочтителен? |
Последовательный.
|
Имхо, параллельно будет быстрее. Можно грузить "пачками" штук по 20-30.
|
Ну вроде физически грузить файлы один за одним или несколько сразу ощутимой разницы нет. А вот с точки зрения AS3. Слушатель, это же не легкая штука. Мне кажется, что если у нас большое количество объектов загрузки, то такое же количество листнеров по производительности проиграет одному листнеру.
ИМХО, снимать и вешать один листнер будет выгодней с точки зрения памяти и производительности. Но мне кажется код на последовательную загрузку будет слегка квадратным) Поддержка такого кода будет менее приятна. Хотя можно в либу это запихнуть и не вспоминать никогда, как ты это реализовал) Знатоки подскажите, я прав? |
Цитата:
Кстати, браузер (или сама флешка) ограничивают кол-во одновременных подключений. Что-то около 4х, кажется. |
хорошо, ну а если эту тему привести к более реальным условиям, есть карта (собирается из кусочков), посчитал приблизительно 32 картинки грузятся при полноэкранном режиме, естестно если это меньший блок то будет меньше, какой более предпочтительный вариант?
счас кстати пришла мысль по поводу моего случая, если делать последовательно то может получиться ситуация когда семеро одного ждут, ну то есть отправился запрос и вот именно на нем сервак задумался, понятное дело задаем время простоя но тем неменее, все остальные будут тупо ждать пока что нить случиться именно с данным запросом |
верно, грузите все вместе
|
то есть мой вариант более предпочтителен
|
При параллельной загрузке не так страшно переполнение — тот же браузер ограничит кол-во одновременных загрузок с одного сервера.
Главное явно хранить все экземпляры загрузчиков, если понадобится прервать всю эту череду загрузок, пробежавшись по списку и выполнив close(). |
Если нужна последовательная загрузка я обычно пользуюсь классом GroupLoad из библиотеки CASA Lib.
|
| Часовой пояс GMT +4, время: 10:40. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.