检测linux上的预定线程

时间:2011-05-18 22:51:21

标签: linux pthreads

我需要检测给定线程当前是否安排到CPU。我在使用pthreads的linux系统上。假设我的代码在信号处理程序上运行,我知道我的应用程序中有线程X和Y,并且从我的信号处理程序中我想检查当前是否安排了X和Y.

感谢您的帮助。

1 个答案:

答案 0 :(得分:3)

一般来说,如果你不得不提出这个问题,你可能会错误地思考。无论你得到什么样的答案都会立即过时,无论你打算如何处理答案都会受到大规模竞争条件的影响。

但是,从理论上讲,您可以查看/ proc / getpid()/ task / threadid / status并查看特定线程是否正在运行。请注意,这是一个非常Linux的东西,“threadid”和pthread_self()的返回代码或pthread_create的pthread_t copy-out之间的任何映射都不是标准。