任务管理器中的CPU时间到底是什么时候?

时间:2009-05-08 13:48:31

标签: wcf windows-services cpu

我有一些托管在Windows服务中的WCF服务。昨天我查看了任务管理器,发现我的Windows服务进程的CPU时间超过5小时,而其他大多数进程都是0。

这是什么意思?

我应该担心CPU时间是5个小时吗?

4 个答案:

答案 0 :(得分:16)

CPU time表示自流程启动以来流程使用了多长时间(在Windows中:链接到Technet article。)

基本上由:

计算
CPU Time of Process = Process Uptime * CPU Utilization of Process

例如,如果进程已运行5小时且CPU时间为5小时,则表示该进程一直在利用CPU的100%资源。这可能是好事还是坏事,这取决于你是想保持较低的资源消耗,还是想利用系统的全部功能。

如果进程使用50%的CPU资源并运行10小时,则CPU时间将为5小时。

答案 1 :(得分:3)

CPU时间反映了程序在CPU中执行指令所花费的时间与等待IO或其他资源的时间有关。您是否应该关注它超过5个小时?

我猜不会,有些事情需要考虑:

  1. 此过程运行了多长时间?

  2. 对于可能会从中窃取CPU的过程或其他进程的性能,您是否有任何问题?

  3. 您还有哪些其他流程?您期望使用CPU的这些活动进程吗?作为80个过程的参考,我有大约20个过程使用超过1秒的CPU时间。

  4. 修改

    WCF服务可能正在从其他服务中窃取CPU,您需要监视它们以确保其性能符合您的预期。您还可以根据总CPU使用情况获得一些感觉。例如,如果您只看到25%的CPU使用,那么您的其他服务不应受到影响;但是,如果你的跑步率超过75%,那么他们可能会受到影响。

    在监控方面,请确保随着时间的推移进行监控,以便了解性能趋势,并帮助您发现问题。例如,您的服务运行正常,但在部署后,它慢慢开始占用越来越多的CPU(假设每周10%)。除非您趋向于使用CPU,否则您可能有一天会醒来并看到您的服务运行缓慢,这可能是部署后几周。

答案 2 :(得分:1)

如果您担心进程使用了​​多少CPU时间,则应使用perfmon在较长时间内跟踪进程的CPU使用情况,以确定是否存在问题。

答案 3 :(得分:0)

任务管理器中的CPU时间究竟是什么?

答案很简单:

进程自启动以来使用的总处理器时间(以秒为单位)。