【发布时间】:2023-03-25 00:18:01
【问题描述】:
我需要找出简单的控制台 C# 程序消耗的时间和内存。
.Net 框架有秒表实用程序来完成第一个任务,
Stopwatch sw = new Stopwatch();
sw.Start();
Process process = Process.GetCurrentProcess();
long memoryUsedInBytes = process.WorkingSet64;
//do something
sw.Stop();
Console.WriteLine(sw.Elapsed.Milliseconds + "ms elapsed.\n" + memoryUsedInBytes/1000 + " KB consumed");
我们在框架中是否有像这样简单的东西来查找简单控制台程序消耗的内存,而不使用高级诊断技术。
编辑:附加内存使用代码,如下所示,由 Habib 回答。
【问题讨论】:
-
@NahumLitvin:根据您对内存使用的定义,这给出了一个可能代表或可能不代表“内存消耗”的数字。
-
这不是衡量消耗的时间,而是经过的时间。如果另一个更高优先级的进程同时运行(并且可用的内核不足),秒表仍会运行,但您的程序不会。见性能。计数器答案,也可以测量消耗的时间。
标签: c# c++ .net frameworks system.diagnostics