Bombus - mobile Jabber client
Sources: http://bombus-im.org/wiki/bombus/svn
!!! ВНИМАНИЕ !!! Убедительная просьба перед занесением багрепорта ознакомиться с правилами. Правильно оформленный отчёт об ошибке - залог быстрого её исправления. Спасибо!
FS#626 — Оптимизация загрузки архива в память
Открыто Shiv (Shiv) - Monday, 02 April 2007, 14:57 GMT+1
Последние изменения Eugene (EvgS) - Tuesday, 03 April 2007, 08:39 GMT+1
|
ПодробностиСитуация такая: 1. Имеется телефон Motorola L7e (heap = 1100 кб, хотя bombus пишет 1012; максимальный размер файла rms = 500 кб, задается сразу по умолчанию, т.е. без FS502) 2. Забиваем сообщениями архив примерно на 180-200 кб. При при попытке просмотреть содержимое архива, bombus выдает лишь белый экран. Полоска heap monitor показывает почти ноль свободной памяти... 3. В лучшем случае удается выйти из архива кнопкой Back, но иногда остается лишь одно - выход из приложения красной кнопкой. Если выйти из архива удалось, то свободная память так и остается почти на нуле... Причем выполнение Clear list чистит память не каждый раз, приходится перезапускать приложение. |
P.S. Ростер примерно 130 контактов + 2 конференции + включенное сжатие... до обращения к архиву свободно примерно 350-400 кб. После - около нуля. Попасть в архив можно только если перейти в офлайн режим или в режим conference only
Довел объем архива до такого состояния, что не возможно прочитать даже в офлайн (т.е. без загрузки ростера и конференций). При обращении к архиву bombus выдает лишь пустой экран. При этом счетчик показывает свободно в архиве 160 кб из возможных 512.
Предложение по оптимизации следующее: при обращении к архиву загружать в память количество сообщений, примерно помещающееся на трех экранах в свернутом состоянии (т.е. примерно 6 строк, видимых на экране в данный момент на экране плюс такое же количество строк для перемещения курсора на один экран вверх и на один экран вниз). Остальные сообщения подгружать и выгружать по мере перемещения по архиву.
Довел размер архива до такого, что слетели настройки аккаунтов, хотя еще должно быть свободно килобайт 150
2Shiv: книжки читаешь?
Сохраняю ссылки например.. rss интересные.. чтобы читать в более удобное время..
Мне кажется, что хотеть супер-функционала от Архива не имеет смысла. Ибо от глючного RMS многого/хорошего не добиться
можно сделать импорт экспорт архива. тогда при удалении всех записей и последующем импорте можно избежать фрагментации
2zet: супер-функционал мне не нужен.. я лишь хочу, чтобы архив загружался в память частямии выгружался из нее по мере перемещения по нему... иначе моему телефону не хватает памяти для просмотра содержимго архива.. возможно и другим тоже..
Архив не предназначен для хранения _огромного_ количества информации (больших сообщений в т.ч.)
из лога Midway:
java.lang.OutOfMemoryError occurred in bi.paint(Graphics), ignored.
PS. на сименсах архив может занимать все свободное место на диске.... И по крайней мере на старых версиях бомбуса (<150 кб) он загружался полностью.. правда тами heap в полтора раза больше.
заметил такую вещь: чтобы очистить память, то Clear list нужно делать в любом другом Message list, а не в том, в котромя пытался вставить в сообщение текст из ирхива