当我们使用kthread_run()
创建内核线程时,我们如何获得线程的tid,内核空间中是否有类似pthread_self()
或gettid()
的内容?
答案 0 :(得分:9)
在内核空间中,您不需要通过调用gettid()
来询问有关您在用户空间中的线程的信息 - 您已经可以访问任务的task_struct
:
struct task_struct* tsk = kthread_run(...);
pid_t tid = tsk->pid; // Thread id of newly created task (if it was successful)