这里有一个截屏在同一主机上同时运行的 top 和 htop(均按 CPU 使用率排序)。为什么 top 只显示少数 php-cgi 和 mysqld 进程,而 htop 却显示所有进程(根据 ps 输出)?
答案1
我认为top
按 pid 排序可以打破排序的僵局。这相当于,所有在任何给定时刻被视为使用 0.0% 的进程实际上将按其 pid 排序。pid 最低的进程当然是与内核等相关的进程,而这些进程就是您在 top 中看到的进程,因为您的 php-cgi 进程的 pid 远高于 100,因此在 0.0% 进程列表中的位置更靠后。
希望有所帮助。
答案2
我认为您看到的差异是由于top
默认关闭线程,而htop
默认打开线程。尝试在一个程序或另一个程序中按“H”切换该设置以匹配,看看显示是否也匹配。