Почему динамическая библиотечная функция выпуска медленна при вызове из исполняемого файла отладки?C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Почему динамическая библиотечная функция выпуска медленна при вызове из исполняемого файла отладки?

Сообщение Anonymous »

Я пытаюсь настроить компилятор Slang Shader, и первым шагом является создание глобального сеанса с: < /p>
SlangResult slang_result = slang::createGlobalSession();
< /code>
Это занимает много времени, примерно 5 секунд в сборке отладки, что на самом деле является долго, учитывая мое предполагаемое использование. В режиме выпуска это в значительной степени мгновенно. Это происходит, связываю ли я Slang.lib или Slangd.Lib. Другими словами, он полностью зависит от сборки исполняемого файла вместо связанной библиотеки. Сначала я был смущен, но тогда это имело смысл, потому что я связываю статически, поэтому весь сгенерированный код станут настройками сборки отладки для кода. Этот DLL будет встроен в режим выпуска и ссылку на Slang.Lib (версия релиза). Мое предположение было, что мой исполняемый файл режима отладки вызовет функцию в DLL и выполняет код, полностью встроенный в режим выпуска, это функция, которую я вызываю: < /p>
extern "C" {

__declspec(dllexport) int compile_slang_source()
{

// call slang::createGlobalSession() here

return 0;
}

}
< /code>
Я связываю ее, и когда я называю эту функцию, «compile_slang_source», он занимает то же время, что и раньше, она действительно очень медленная, не выпускаю скорость сборки, но почти идентично. < /p>
Я не понимаю. Сгенерированный код в DLL должен быть полностью сборкой режима режима, которая должна быть быстрой. Разве не тот случай, когда я называю эту функцию, она должна быть такой же скоростью, как и в режиме выпуска? Я действительно не так, как такая функция может занять так много времени, я имею в виду, что .dll - это всего лишь 12 КБ, и ей просто нужно инициализировать компилятор. Что происходит?

Подробнее здесь: https://stackoverflow.com/questions/794 ... a-debug-bu
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C++»