查找进程的上下文切换计数和运行队列等待时间

查找进程的上下文切换计数和运行队列等待时间

我观察到(基于日志)我的(java)进程在执行过程中因某些原因而暂停。我的第一个猜测是上下文切换。为了验证这一点,我试图找出(a)我的进程发生的非自愿上下文切换次数,以及(b)进程在运行队列中花费的时间(准备运行但等待调度)。

是否有任何工具可以收集这些信息。我正在运行内核 2.6.18 (centos 5) 和 2.6.32 (centos6)。

答案1

要查看操作系统中的上下文切换行为,请使用:

vmstat 2 200

当应用服务器启动时,您看到上下文切换攀升,则您的理论是正确的。要详细了解这些上下文切换的详细信息,您可能希望使用可视化虚拟机。这将为您提供有关线程、交接时间、正在等待的内容等更详细的视图。

相关内容