我正在尝试使用 dotMemory 进行简单测试。我希望以下测试会通过:
[Test]
public void MemoryStream_is_disposed()
{
using (var stream = new MemoryStream()) { }
GC.Collect();
GC.WaitForPendingFinalizers();
GC.Collect();
dotMemory.Check(memory => memory.GetObjects(where => where.Type.Is<MemoryStream>()).ObjectsCount.Should().Be(0));
}
但事实并非如此!
为什么,我需要做什么才能通过考试?
这可能就是我的代码中有内存泄漏的原因。