Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
Tester64
397 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
1

Удержать кеш в памяти

25.07.2014, 06:13. Просмотров 522. Ответов 2
Метки нет (Все метки)

Гуру, помогите! Задача не для новичка...

Есть сложная программа (моя), которая при старте читает много данных в память и хитро индексирует их. Как это обычно делают игры....
Проблема в том что мне надо при старте устройства один раз проделать эту длинную процедуру (около 15-20 секунд), а потом иметь доступ к этим данным (набор классов) при каждом запуске по иконке. Убив программу через хоум не должен потерять все! Упростить сильно данные не могу, как и записать их в базу в виде, готовом для использования...

Программа основная для устройства (спец программа) - игры и другие утилиты это редкость, но и мешать не хочу...

Уже думал и над независимым сервисом - хранилищем(неубиваемый с нотиф), и над другой программой - хранилищем (с сервисом и потоком), и над попыткой записывать кеш на флешку прямо из обьектов... Но... нет гарантии что сервис или другую программу все равно не убьют мусоросборщики, а кеш на флешке не повредится при записи и вообще успеет записатся (если его убивают через хоум)

Привык в винде что одна программа может быть сервером хранения и обработки данных в выделеных блоках памяти, а другая только интерфейсом для юзера. Некое подобие SQL сервера или многозвеньевых структур хранения и обработки данных. Можно ли подобное в андроиде организовать?

Даже думал на NDK перейти ради этого - там сборщика мусора нет и если удержать программу не убитой, то по идее и данные сохранятся...
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.07.2014, 06:13
Ответы с готовыми решениями:

EditText: удержать курсор на месте
нужно в edittext изменить часть текста (добавить span). Я делал так: копировал текст из edit text в...

Как создать кеш
Добра всем. Никак не могу найти, куда правильно и по канону сохранять временные файлы своего...

Как влияет кеш памяти L3 на производительность процессоров?
Хочу поменять проц. Остановился я на феном ІІ х2 545 (550, 555) Пошастал в нете и оказалось что...

Очистка кеш-памяти (процессор Intel i5 750 2,66 ГГц)
Как очистить кеш-память?(процессор Intel i5 750 2,66 ГГц)

Удержать форму на заднем плане
Я не могу окно переместить и удерживать под всеми остальными. SendToBack(); - не работает....

2
forcelain
6 / 6 / 1
Регистрация: 14.07.2014
Сообщений: 28
25.07.2014, 09:05 2
Если то, что Вы хотите "удержать в кеше" представляет из себя набор объектов каких-то классов в каком-то важном для Вас состоянии, можете попробовать воспользоваться сериализацией.
0
Tester64
397 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
25.07.2014, 18:30  [ТС] 3
Цитата Сообщение от forcelain Посмотреть сообщение
можете попробовать воспользоваться сериализацией
Думал над этим... Но куда сохранять эти классы и когда?

Знал о подобной технологии и уже думал о ней. Полистал http://habrahabr.ru/post/60317/
Но так и не понял... похоже еще предстоит придумать протокол хранения классов и методику чтения востановления всех подчиенных и таблиц...

Классы в памяти могут изменяться и перестраиватся юзером. Еще нужно вводить контроль версии...
Да и повредить данные можно на флешке не успев их дописать (перезагрузка, сдыхание батареи или убийство юзером). А значит еще нужен контроль целостности.

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

Слышал что можно сделать сервис системным(неубиваемым) с обязательной иконкой в нотиф. Может можно ТУДА поместить данные? Вместе со сложной логикой? А форма будет лишь отобржать эти данные? И грузиться мгновенно...
Или сделать подобный сервис в соседней программе?
0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.07.2014, 18:30

Как удержать 1st позицию?
<b>Всем привет!</b> Я много читаю по поводу оптимизации и продвижения сайта, но до сих пор не могу...

Можно ли удержать PR=5 и более, полученный
Вопрос - Допустим, один очень хороший человек купил один очень хороший домен с PR=5 или более. На...

Помогите удержать footer внизу страницы!
Я знаю, что инструкции по моему вопросу есть на каждом углу, но мне попался тут один шаблон, никак...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru