在Linux中,我们可以使用“cat / proc / processs-id / sched”来获取调度信息,nr_switches,nr_voluntary_switches,nr_involuntary_switches告诉我们有多少次调度进程。是否有任何类似的方法可以获得线程的调度时间? 提前谢谢!
答案 0 :(得分:1)
“调度时间”很难知道你的意思。如果你的意思是内核/用户运行滴答,那么/prox/xxx/stat
看起来它有关于运行时的一些细节。
在linux下,可以在/proc/xxx/task/yyy
中找到进程的线程。每个目录对应于与父项关联的线程进程。
utime%lu 此进程在用户模式下的计划时间,以时钟周期计算(除以sysconf(_SC_CLK_TCK)。这包括访客时间,guest_time(运行虚拟所花费的时间) CPU,见下文),以便不知道访客时间字段的应用程序不会因计算而浪费时间。
stime%lu 在内核模式下调度此进程的时间,以时钟周期计算(除以sysconf(_SC_CLK_TCK)。
我会检查proc联机帮助页以获取可用文件列表。
man proc