Linux kernel 如何获取内核线程ID?

Linux kernel 如何获取内核线程ID?,linux-kernel,Linux Kernel,当我们使用kthread\u run()创建内核线程时,如何获得线程的tid,内核空间中是否有类似pthread\u self()或getId()的内容 在内核空间中,您不需要像在用户空间中一样通过调用gettid()来询问线程的问题——您已经可以访问任务的task\u struct: struct task_struct* tsk = kthread_run(...); pid_t tid = tsk->pid; // Thread id of newly created task (i

当我们使用
kthread\u run()
创建内核线程时,如何获得线程的tid,内核空间中是否有类似
pthread\u self()
getId()
的内容

在内核空间中,您不需要像在用户空间中一样通过调用
gettid()
来询问线程的问题——您已经可以访问任务的
task\u struct

struct task_struct* tsk = kthread_run(...);
pid_t tid = tsk->pid; // Thread id of newly created task (if it was successful)
(过了一会儿)我发现,如果有几个线程
pid\t tid=current->pid
将为正在运行的线程执行任务。