2009-01-20 23 views

回答

39

术语“当前内存使用情况”有点松散定义。你的意思是工作组?无论如何,您可以使用流程类中的不同属性(例如VirtualMemorySize,WorkingSet,PrivateMemorySize等)来检索它。

long workingSet = System.Diagnostics.Process.GetCurrentProcess().WorkingSet64; 
6

有很多这些东西的性能计数器,如果你不能使用Perfmon,你可以通过诊断API访问计数器。

3

有一次,我发现在遗留代码中的内存泄漏,我就翻过这一解决方案: 开始“任务列表”适当的参数作为一个过程,无论是从流或从文件中读取输出。

例如

tasklist /fi "IMAGENAME eq notepad++.exe" /FO CSV /NH 

输出是:

"notepad++.exe","7132","Console","1","21.004 K" 

不就是优雅,但在任何编程语言,适用于Windows,无需额外的依赖(C++/QT在我的情况)。

相关问题