我有一个用 C 语言编写的小守护进程,我需要一种方法来获取线程上的当前 CPU 时间。Linux 显然提供了许多方法来执行此操作,clock_gettime(CLOCK_THREAD_CPUTIME_ID, ...)、pthread_getcpuclockid()、getrusage(RUSAGE_THREAD, ...) 但 OpenSolaris 2009.06 似乎不支持这些方法。
是否有一种跨平台友好的方式来获取线程的当前 CPU 时间?如果没有,有没有办法在 OpenSolaris 中做到这一点?在这一点上,我什至愿意放入一堆丑陋的编译器指令来完成这项工作。