我正在寻找其他方法来获取C#中设备上的总CPU利用率百分比和可用内存量。

这里描述了一个非常简单的解决方案: http://zamov.online。 FR / EXHTML / CSHARP / CSharp_927308.html

但是,.NET Compact Framework 3.5中不包含PerformanceCounter类。

还有其他方法吗?

谢谢:)

有帮助吗?

解决方案

免费RAM非常简单 - 尽管您同时拥有物理和虚拟资源 - 两者都很重要。你为此 P / Invoke GlobalMemoryStatus (像往常一样SDF有它已经包裹在一个更友好的对象模型中。)

CPU使用情况完全不同。在PC上,您有一个很好的处理器寄存器,可以轻松,便宜地访问CPU使用情况。在ARM上(这是你的WinMo设备中的内容)你没有那个。它可以使用 Toolhelp API GetThreadTimes ,但它非常沉重,计算它的过程本身就使用了大量的CPU。一般来说,获取CPU使用率并不值得花费代码或获取它所需的执行时间。

其他提示

您需要为流程总结线程处理时间,然后获得流程列表以及它们在一段时间内运行的时间: http://www.hjgode.de/wp/2012/12/14/mobile-发展-A-远程CPU监视器和CPU的使用率分析/

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top