【问题标题】:Where are .NET 4.0 MemoryCache performance counters?.NET 4.0 MemoryCache 性能计数器在哪里?
【发布时间】:2013-12-02 06:21:48
【问题描述】:

.NET 4.0 MemoryCache 性能计数器在哪里?

我正在寻找他们的名字,但找不到。

谢谢,

【问题讨论】:

    标签: c# .net caching .net-4.0 memorycache


    【解决方案1】:

    这是一个回答很长的问题。我怀疑它会有所帮助,让我们谈谈您要解决的真正问题。必须先注册这些性能计数器才能看到它们。

    启动提升的控制台提示符(右键单击快捷方式并使用以管理员身份运行)并键入以下命令:

    cd C:\Windows\Microsoft.NET\Framework\v4.0.30319
    lodctr netmemorycache.ini
    

    这会添加所需的注册表项,以便 MemoryCache 可以在运行时创建这些计数器。启动您的程序,以便创建 MemoryCache 的实例。运行 Perfmon.exe,右键单击图表,添加计数器,然后从添加的“.NET Memory Cache 4.0”类别中选择。同时选择你的程序实例。

    【讨论】:

    • 非常感谢!!!这正是我一直在寻找的。它给我留下了另一个更重要的问题:这是在哪里记录的?我到处搜索“netmemorycache.ini”,但找不到有意义的踪迹。我觉得我在这里错过了一些重要的东西,因为整个 MSDN 没有任何与此相关的文档。此外,添加这些计数器是否会降低性能?如果有,我可以在完成性能分析后卸载它们吗?
    • 我不知道,我只是自己想出来的。花了我一段时间。不用担心,性能计数器非常便宜。看起来这个问题已经回答了,请关闭它。
    • 我只是将其标记为答案。再次感谢。如果您可以分享并告诉您是如何解决的,那将是一个很大的帮助?我的意思是线索在哪里?
    • 不只是一个。我研究了 MemoryCache 代码。然后在测试程序中看到私有字段为空。然后发现 MemoryCache 尝试初始化它们时引发的异常。然后找出 readOnly 参数对 PerformanceCounter 构造函数的含义。然后发现它们需要预先创建。然后研究了如何在 .NET 框架中使用其他类似的计数器。然后发现谷歌点击了这些是如何配置的。给我 LODCTR 提示,然后从文件名中轻松找到要使用的 .ini 文件。
    • 你是个巫师@HansPassant,我不知道这个星球上你怎么知道这个问题的答案是这个问题
    猜你喜欢
    • 1970-01-01
    • 2010-12-05
    • 1970-01-01
    • 1970-01-01
    • 2011-07-01
    • 1970-01-01
    • 2011-05-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多