繁体   English   中英

使用 dotMemoryUnit 监控峰值内存使用情况

[英]Monitor peak memory usage with dotMemoryUnit

是否可以使用 JetBrains 的dotMemoryUnit获得峰值内存使用量?

我知道可以看到内存流量:分配和集合。 但是,如果我想在测试期间看到峰值内存使用量从未超过一定数量怎么办?

例如,如果我的应用程序分配 100 mb,收集它,然后再分配 100 mb,然后再分配,那很好。 但是如果它一次分配200mb,我想抓住它。

看起来我试图解决的问题在没有 dotMemoryUnit 的情况下很容易解决。

使用PeakWorkingSet64对我有用

使用NUnit的测试可能如下所示:

    [Test]
    public void Should_not_peak_more_than_200_mb()
    {
        var memoryCap = 200 * 1024 * 1024;
        var sut = new SystemUnderTest();
        sut.DoMemoryHeavyOperation()
        var peakWorkingSet = Process.GetCurrentProcess().PeakWorkingSet64;
        Assert.That(peakWorkingSet, Is.LessThan(memoryCap));
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM