2

几年前,我编写了一些代码来“发布”数据以供 perfmon 使用。使用这些计数器有很好的记录,但我发现(当时)找到好的文档和示例代码来发布 perfmon 的数据具有挑战性。

有谁知道我在哪里可以得到这个文件?我似乎还记得一些类包装器,但我可能弄错了。


编辑:

我确实找到了这个,我会继续寻找“自定义应用程序性能计数器”。

4

2 回答 2

2

你带回了旧的回忆!

从 1998 年开始,Jeffrey Richter在 Microsoft Systems Journal 上写了一篇文章,描述了如何创建自己的性能计数器,这非常简单(剪切和粘贴他的模板代码后,只需在 dll 中添加共享内存变量,并根据需要更新它们)。

于 2009-05-19T21:50:26.637 回答
1

您在寻找托管或本地包装器吗?您发布的链接是托管的,但您的问题是原生的(c++)。在托管世界中,使用 PerformanceCounter 和它的亲戚http://msdn.microsoft.com/en-us/library/system.diagnostics.performancecounter.aspx发布计数器相当容易和直接。对于中等容量,它们也可用于读取计数器,对于大量容量,尽管您必须使用 PDH.DLL,因为根据我的经验,托管计数器一次读取一个计数器的开销将是巨大的。我个人开发了 XSLT 转换来在我的应用程序中生成所有 prfmon 计数器,我在这里写了一篇博客:http ://rusanu.com/2009/04/11/using-xslt-to-generate-performance-counters-code/我还有更多即将发布的材料可以写博客。如果您的问题是关于非托管 API,我手边没有任何指针,但我个人会继续使用 XSLT 来生成我所有的 perfmon 代码,因为其中很多都是重复的。

于 2009-05-19T21:30:47.457 回答