Каждый пример трассировки в .NET людей удаляет слушателя "Default
":
<configuration>
<system.diagnostics>
<sources>
<source name="TraceSourceApp" switchName="SourceSwitch" switchType="System.Diagnostics.SourceSwitch">
<listeners>
<add name="ConsoleListener"/>
<add name="ETWListener"/>
<remove name="Default"/>
</listeners>
Что такое слушатель По умолчанию и почему он существует по умолчанию?
Парень из Microsoft сделал тесты издержек с разными слушателями :
Default |===============================14,196 ms=====/ /================>
TextWriterTraceListener |=========211 ms======>
EventProviderTraceListener |=> 77ms
Что такое Default
слушатель трассировки и почему он такой медленный?Это OutputDebugString
?OutputDebugString
действительно на два порядка медленнее, чем запись в файл?
Есть ли .NET TraceListener
, который просто использует OutputDebugString
?
Что такое стандартный прослушиватель трассировки, почему он такой медленный, почему его обычно удаляют, и еслиэто так плохо, почему это по умолчанию?