System.Diagnostics.Trace Overhead - PullRequest
       5

System.Diagnostics.Trace Overhead

1 голос
/ 25 апреля 2011

У меня есть приложение, которое использует Trace.WriteLine почти во всех методах, которые оно использует. В программе есть несколько разных проблем.

Что мне интересно, так это какие-либо накладные расходы, связанные с частым использованием System.Diagnostics.Trace.WriteLine? Я стремлюсь решать проблемы по мере их обнаружения, и лично я чувствую, что использование Debug / Trace WriteLine практически во всех методах программы должно сопровождаться снижением производительности.

Программист, написавший это приложение, срочно отправил несколько заявлений об активах, которые в прошлом доставляли нам неприятности.

1 Ответ

5 голосов
/ 25 апреля 2011

возможно , что Trace может привести к проблемам с производительностью вашего приложения. Особенно, если он используется в каждом методе программы.

К счастью Trace.WriteLine к нему прикреплен атрибут Conditional: Trace. Если вы компилируете приложение без определенной трассировки, оно будет скомпилировано так, как если бы вызовы просто не существовали. Это позволит вам быстро провести тест на глазное яблоко, чтобы определить, влияет ли это на производительность.

Единственный способ узнать - это подключить приложение к профилировщику. Это определенно скажет вам, если Trace.WriteLine является проблемой для вашего приложения.

...