CLR 4.0中新的ETW功能究竟是什么?

我的同事提到CLR 4.0在Windows事件跟踪方面有一些重大改进,但我找不到具体内容的详细信息。很少有博客文章仅提及改进,但没有提供有关新内容的详细信息。任何人都有更深入的了解吗?     
已邀请:
以下是CLR 4.0中的ETW事件列表 运行时信息ETW事件 异常Thrown_V1 ETW事件 争夺ETW事件 线程池ETW事件 装载机ETW事件 方法ETW事件 垃圾收集ETW事件 JIT追踪ETW事件 Interop ETW Events应用程序 域资源监控(ARM)  ETW活动 安全ETW事件 堆栈ETW事件 有关这些的详细说明,您可以在msdn中阅读它们 并且XPERF也无法使用ETW解码托管堆栈,因此BCL团队已经在codeplex中发布了另一个名为Perfmonitor的工具,可以使用它。 HTH     
可通过托管和本机托管API以及Windows事件跟踪(ETW)获得应用程序域资源监视。 您现在可以访问ETW事件以进行诊断,以提高性能。 http://msdn.microsoft.com/en-us/library/ms171868.aspx#core_new_features_and_improvements     
如果你在上面的一些链接中挖掘出来,你可能会发现的两个改进是一个新的EventProviderTraceListener类和一个新的EventProvider类。 EventProviderTraceListener可以侦听TraceSources(与任何其他TraceListener一样)并将TraceSource消息路由到ETW系统。 EventProvider类允许您将消息直接记录到ETW系统。 这些类仅适用于Vista及更高版本(实际上,它们在.NET框架4.0中“可用”,无论您使用何种级别的操作系统,它们都不适用于XP及更低版本)。 我没有使用这些类中的任何一个(我也没有使用过ETW),但在我看来,它们使得从.NET应用程序中使用ETW变得更加容易。如果你想使用ETW,你仍然需要做一些工作才能配置ETW。 这篇文章描述了如何使用ETW。我不确定是否有关于ETW的更多当前信息。请注意,本文是在新的.NET ETW类可用之前编写的。     

要回复问题请先登录注册