Форум программистов, компьютерный форум CyberForum.ru

Производительность DLL - C++

Восстановить пароль Регистрация
 
FireNovel
 Аватар для FireNovel
150 / 73 / 8
Регистрация: 09.04.2010
Сообщений: 297
30.07.2012, 12:29     Производительность DLL #1
Привет всем, у меня вопрос по производительности подключения DLL-ки по сравнению с чтением из файла.

В программе использую небольшую бд (набор массивов "std::vector<>"), которые один раз заполняю, а после вытягиваю из них данные. Для этого сделал класс интерфейс.
Поскольку запись данных типа vector<> в файл нужно реализовывать отдельно. Придумал сделать dll-ку в которой сохранить всю структуру класса бд и один глобальный константный объект.

Суть вопроса: что будет быстрее работать использование dll-ки (посредством ::LoadLibrary() получить указатель на константный объект) или сохранять этот объект в файл и подгружать из файла.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.07.2012, 12:29     Производительность DLL
Посмотрите здесь:

Производительность кода C++
C++ Производительность
C++ Производительность операций
Влияет ли на производительность C++
C++ Вызов Dll-фий в другой Dll
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Avazart
 Аватар для Avazart
6897 / 5137 / 252
Регистрация: 10.12.2010
Сообщений: 22,578
Записей в блоге: 17
30.07.2012, 15:50     Производительность DLL #2
А как вы собираетесь изменять данные БД если она будет в DLL и вообще какой смысл использования DLL ?
FireNovel
 Аватар для FireNovel
150 / 73 / 8
Регистрация: 09.04.2010
Сообщений: 297
30.07.2012, 16:17  [ТС]     Производительность DLL #3
Изменять данные я как раз и не хочу. Т.е. буду только один раз при сборке DLL.
БД у меня "константная".

Цитата Сообщение от Avazart Посмотреть сообщение
и вообще какой смысл использования DLL
Смысл в том, чтобы не заморачиматься с записью отдельно каждого элемента в файл, а сохранить целиком весь объект.

Может я не прав. Потому и задал вопрос.
Avazart
 Аватар для Avazart
6897 / 5137 / 252
Регистрация: 10.12.2010
Сообщений: 22,578
Записей в блоге: 17
30.07.2012, 16:19     Производительность DLL #4
Почему не вписать в ресурсы или тупо "впечатать" в программу?
FireNovel
 Аватар для FireNovel
150 / 73 / 8
Регистрация: 09.04.2010
Сообщений: 297
30.07.2012, 16:40  [ТС]     Производительность DLL #5
Цитата Сообщение от Avazart Посмотреть сообщение
или тупо "впечатать" в программу
это можно, но...
Хотелось бы повторно использовать эту длл-ку. т.к. она будет вызываться несколькими программками.
По-моему в этом случае длл будет загружена все один раз. Поэтому и встал вопрос, что будет быстрее один раз загрузить длл или несколько раз из данные из файла?
Avazart
 Аватар для Avazart
6897 / 5137 / 252
Регистрация: 10.12.2010
Сообщений: 22,578
Записей в блоге: 17
30.07.2012, 16:49     Производительность DLL #6
т.к. она будет вызываться несколькими программками.
В таком случае да есть смысл.

Наверное рациональность использования будет зависить от размера файла.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.07.2012, 19:30     Производительность DLL
Еще ссылки по теме:

Запись из внедренной dll в другую dll этого процесса C++
Как узнать зависимость DLL-ки от других DLL-ек? C++
C++ Как подключить dll на C# к проекту (dll) на С++

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

Или воспользуйтесь поиском по форуму:
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1283 / 1217 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
30.07.2012, 19:30     Производительность DLL #7
Цитата Сообщение от FireNovel Посмотреть сообщение
а сохранить целиком весь объект
Используй сериализацию. Вариант с файлом более гибкий, чем с dll, но dll легко упаковать PePack'ом или аналогичной программой. Если размер объекта большой, то можно вообще не загружать его в память, а использовать отображение файла в память.
Yandex
Объявления
30.07.2012, 19:30     Производительность DLL
Ответ Создать тему
Опции темы

Текущее время: 02:53. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru