Что происходит с DLL в режиме отладки внутри веб-приложения с debug = false? - PullRequest
0 голосов
/ 29 июня 2009

Я понимаю, что debug = true - плохая вещь на любом рабочем сервере.

В настоящее время я использую некоторые библиотеки DLL от сторонних разработчиков, скомпилированные в режиме отладки, и мне хотелось бы знать - что происходит с DLL в режиме отладки внутри веб-приложения с debug = false?

Ответы [ 3 ]

2 голосов
/ 29 июня 2009

В C # / .NET (в отличие от C ++ DLL) это обычно не проблема. Отладка и выпуск практически идентичны, и нет проблем с управлением памятью (как это было бы с C ++ DLL).

Следующее из блога jaybaz :

Есть 3 вещи, которые люди обычно определяют как разницу между отладкой и выпуском. Вам нужно решить, какой из них вас интересует:

Флаг препроцессора «DEBUG». Может быть установлен для всей сборки / сетевого модуля с помощью «csc / define» или для всего файла с #define.

Отладочная информация (pdb). Установить с помощью «csc / debug [+ | -]». Это не влияет на codegen, поэтому на самом деле это не очень интересно.

Оптимизация. Установите с помощью «csc / optimize [+ | -]». В управляемом коде JITter во время выполнения выполняет почти всю оптимизацию. Отличие генерируемого IL от этого флага довольно мало. Компилятор Whidbey C # имеет больше различий в этом флаге, чем в предыдущих версиях, но он все еще невелик.

1 голос
/ 29 июня 2009

Атрибут debug элемента конфигурации system.web / compilation не влияет на код скомпилированных DLL.

Это влияет только на код, который динамически компилируется, и имеет некоторые другие эффекты на время выполнения (например, элемент executeTimeout элемента конфигурации system.web / httpRuntime игнорируется, если debug = true).

0 голосов
/ 29 июня 2009

AFAIK, если компиляция в компиляторе в режиме отладки не оптимизирует двоичные данные, что облегчает отладку. Это может привести к плохой производительности в случаях. Также компилятор добавляет дополнительные данные в сборки для отладчика.

Полагаю, вы говорите о веб-сайте ASP.Net и о dll, скомпилированном в режиме отладки или в режиме выпуска.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...