Утилита шикарна по своему предназначению, спасибо разработчикам!

Sep 25, 2013 at 7:27 AM
Edited Sep 25, 2013 at 9:04 AM
Пару дней назад заметил что утилита потребляет оперативной памяти 500 мегабайт, так и должно быть или специально задан определенный процент "отжирания" общего объема памяти? Это при условии что работает круглые сутки и с библиотекой Либрусека на платформе Win 8.

Image
Coordinator
Sep 25, 2013 at 2:39 PM
Edited Sep 26, 2013 at 3:35 PM
Да, это так и задумано; для пущей простоты, переносимости и портабельности я решил не использовать database engine.
Программа держит все в RAM: базу данных, кэш картинок и т.д. Что-то можно отнести на счет неэффективности "менеджера кучи" .NET, может, и у меня есть memory leaks в коде (к сожалению, с тестерами напряженка), но я не "парюсь".
Ни на одном PC дома нет меньше 6 GB (а на рабочей станции вообще 16 GB установлено :) ); на домашнем сервере, где работает TinyOPDS уже несколько месяцев, 8 GB, программа работает стабильно (правда, периодически сервер перегружается из-за апдейтов от MS).

P.S. Я тут немного подумал и решил: добавлю специальный режим "low memory mode": не буду грузить описания книжек в память, и кешировать картинки (благо, это достаточно просто реализовать). Проверил: если с полной базой (моей), сразу после загрузки, программа занимает 369M, то с "усеченной" - "всего" 172M :) Думаю, что в этом режиме программа сможет заработать на linux-based NAS-ах и роутерах ;)