Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   сохранение и чтение данных на клиенте (http://www.flasher.ru/forum/showthread.php?t=126703)

zafod 25.06.2009 09:36

сохранение и чтение данных на клиенте
 
Короткая тема и корткий вопрос.
Суть задачи: сцена предсталяет слбой карту местности, разбитую на 100 битмапов размером 80х80 px, которые отображаются в зависимости от положения viewport'а пользователя (остальные битмапы не отрисовываются), но естессно такае схема мягко говоря кушает много памяти.
Вопрос: логично ли те битмапы, которые не востребованы пользователем временно хранить на жестком диске, а по мере надобности подгружать во флешку, а не используемые в свою очередь скидывать на жесткий? В AS3 реализовать такую схему не составит труда, но как это скажется на производительности? Используются ли такие схемы?

KODERart 25.06.2009 13:06

Если приложение не AIR, забудьте про жесткий диск.

dimarik 25.06.2009 13:29

Цитата:

Сообщение от zafod (Сообщение 830571)
Используются ли такие схемы?

Обязательно. В standalone клиентах. Через тырнет браузер сам кеширует файлы. ТОже нет нужды заморачиваться. А вот что означает фраза "а не используемые в свою очередь скидывать на жесткий" я не догнал.

zafod 25.06.2009 22:07

dimarik : removeChild при невидимости( и достаточной удаленности битмапа от видимой области) запись его содержимого в локальное хранилище допустим и освобождение памяти. Просто с нагруженными битмапами плеер жрет через чур много памяти.
А я не догнал если честно : В standalone клиентах. Через тырнет браузер сам кеширует файлы. Как? Мне битмап приходит через сокет соединение, на клиенте он собирается по битам (точнее приходит zip архив), не думаю, что браузер его закеширует, или я не прав?
Может изначально у меня схема очень замороченная?

BlooDHounD 26.06.2009 00:51

по сокету гнать зип-архив, в котором лежит картинка ... да не, нормально :) не заморочено. бывает и хуже. например тупо запрашивают по ХТТП.

dimarik 26.06.2009 11:26

zafod, чем Вас не устроил вариант с передачей контента по HTTP? А по сокету гонять только данные.

zafod 26.06.2009 22:09

может я конечно не прав, но не вижу смысла в HTTP, если у меня открыто прямое сокет-соединение, гонять данные? - ну так я и гоняю, какая разница, что идет через сокет. Разработан протокол передачи( кривенький правда ), но получив оффсет зип архива он его привот к читабельному виду через класс-обертку Loader'a. Вообще конечно спорный вопрос, я согласен, вариантов куча.
Может вернемся к изначальному вопросу? Нормально скидывать не используемые битмапы через sharedObject на диск?

iflamberg 26.06.2009 22:27

sharedObject по-моему ограничен на 1мгбайт или что-то около того по умолчанию. Когда израсходованны - спрашивает у пользователя - расширить хранилище или нет. А больше препятствий по-моему нет.

zafod 26.06.2009 22:37

Цитата:

Сообщение от iflamberg (Сообщение 831202)
sharedObject по-моему ограничен на 1мгбайт или что-то около того по умолчанию. Когда израсходованны - спрашивает у пользователя - расширить хранилище или нет. А больше препятствий по-моему нет.

да-да именно так, и пользователь у меня говорит "да". Вопрос - на сколько упадет быстродействие? Потому как у меня получается постоянная (с перерыврм не более минуты) чтение - запись посредствам sharedObject. Соотв. класс для данной схемы практически готов, но не хочется тратить время на заведомо неправильную/медленную схему, поэтому прошу совета, может кто использовал что-то подобное

BlooDHounD 27.06.2009 00:54

правильная и быстрая схема - юзать ХТТП.


Часовой пояс GMT +4, время: 19:11.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.