是否有可能知道当前线程获得多lessCPU使用率?

我正在为游戏引擎中的卸载任务编写一个任务调度程序,而且我希望根据几个启发式来调整自己。 是否有可能知道在两个时间点之间执行当前线程多长时间? 我想花时间执行任务多长时间,而且我希望这个时间能够有多种原因排除线程切换(它是一个更准确的度量,另外知道我的线程正在被切换出多less会是有用的)。 我想为Linux解决scheme,但Windows解决scheme也将不胜感激

试着看/ proc / [pid] / task / [tid] / stat

格式类似于/ proc / [pid] / stat,并在这里解释: http : //www.kernel.org/doc/man-pages/online/pages/man5/proc.5.html

来自pthread_getcpuclockid()手册页的示例代码表示您可以使用clock_gettime(CLOCK_THREAD_CPUTIME_ID, &ts)