PowerGrasp - архиватор от Malcolm'а | SEclub.org
PowerGrasp - архиватор от Malcolm'а
Все новые
Всего сообщений: 5198
*
Sieme
1 янв 2008 в 11:11
Malcolm спасибо! Я поправил пути в классах и запустил тот же тест, о котором я выше написал про z530i, на теле ef81. Так вот на ef81 прога создала только один тест-файл размером 15,1 килобайт. Но прога не зависла и вышел я из нее нормально. Лог тоже создала размером 105 байт.
*
Malcolm
ts 1 янв 2008 в 11:11
k75Oi_Aleks, нет, все правильно, 262 144 байта - это и есть ровно 256 КБ, точнее, KiB, машинных КБ. Не забывай, что с программной точки зрения в килобайте 1024 байта (KiB - новое обозначение, чтобы не путались, читается как кибибайт).
shiva26, посмотрел твои логи, у тебя прошло успешно только два теста: 3 и 4. Из чего я делаю вывод, что проблемы могут возникать, когда пишешь в файл по одному байту, но все отлично работет, если писать сразу массивом. :strela:
*
Malcolm
ts 1 янв 2008 в 11:15
Значит придется делать так, чтобы файлы сначала сохранялись в Heap, а уже потом записывались в файловую систему. Увы, при больших файлах, примерно от 1 МБ памяти может не хватать, но это вынужденная мера. Иначе на телефонах 4-го поколения может не работать в отдельных случаях.
Sieme, попробуй запустить все тесты подряд и напиши, какие из них получились. И еще не забудь проверить свободную память, должно быть около 1 МБ.
*
Nasferatus
1 янв 2008 в 11:18
Malcolm, просто сделай в настройках пункт для 4 и 5 поколения думаю будет целесообразнее.
*
Malcolm
ts 1 янв 2008 в 11:28
Nasferatus, да можно и без этого обойтись, платформа-то определяется и программным методом. Но беда в том, что на телефонах с 5-го поколения Heap уже достаточно много, и они смогут даже 4 МБ запаковать без всяких ухищрений, а вот на 4-м поколении так не получится. На 4-м поколении как раз такой метод и был бы актулен, а его не получается применять из-за этого непонятного глюка.
1 янв 2008 в 11:29 / Malcolm (1)
*
Sieme
1 янв 2008 в 11:29
Malcolm запускал новую версию на z530i в разных комбинациях. Ошибку ни разу пока не выдало. Нормально создает тест-файлы размером по 256 килобайт. Ты имеешь ввиду все версии проверить на ef81?
*
Malcolm
ts 1 янв 2008 в 11:33
Sieme, ну да.
*
Sieme
1 янв 2008 в 11:40
Это займет много времени, так как в каждой надо хексом исправить 5 путей и перезапаковать. А зачем писать в файл по байту? Почему не создавать буфер, например в 100 килобайт, и, когда он заполнится, сбрасывать его в файл целиком? Это при больших файлах?! А при малых - создавать этот же буфер размером, равным размеру файла?
*
KD_PRO
1 янв 2008 в 13:05
Malcolm, отпишусь что на w810-ом происходит.. При попытке распаковать любой файл в DeviceExplorer к примеру вылетает
Writing file:///c:/other/readme.txt
java.lang.OutOfMemoryError ;)
*
k75Oi_Aleks
1 янв 2008 в 13:21
Это конечно бред, но мало ли... :neznaet: Саш, может такое быть, что прога не записывает, а ПЕРЕзаписывает данные в файл? При записи "по ходу" каждый последующий байт перезаписывается поверх предыдущего. А когда целиком, то результат и получается нормальным... Недостаток этой версии в том, что тогда вес файла должен быть 1байт, а не 0... :neznaet:
*
shiva26
1 янв 2008 в 15:35
k75Oi_Aleks, нет, тест пытается записать данные в файл разными способами, грузо говоря задай туда анекдот он его и перепишет, там обычное перечисление
1 янв 2008 в 15:38 / shiva26 (1)
*
Malcolm
ts 1 янв 2008 в 15:40
Sieme, в принципе, можно, если так будет работать. Наверное, так и сделаю. С семеном бог с ним, на SE бы хотя бы работало...
KD_PRO, понял, значит буду проверять потребление памяти.
k75Oi_Aleks, совершенно верно, все так и есть. Но переписывать можно только если такой файл уже существует, когда я сохраняю в существующий архив, например. И еще придется отезать кусок от конца, если исходный файл оказался больше, а это лишние сложности.
Для полноценного использования разделов сайта войдите или зарегистрируйтесь.
Приложения Java | Загрузки Seclub | Форум | Главная
18+ © Seclub.org 2003-2025