我目前正在阅读 Robert Love 所著的《Linux 内核开发》。在阅读有关线程的内容时,我遇到了 kthread_create() 函数,它接受多个参数并相应地生成一个内核线程。
struct task_struct *kthread_create(int (*threadfn)(void *data),
void *data,
const char namefmt[],
...)
据我所知,第一个参数是指向函数的指针,第二个参数是threadfn()的参数,namefmt是进程的名称。有人可以解释一下最后那些变量参数是什么吗?
答案1
namefmt
是printf
-style 格式字符串,可变参数是相应的参数(如果有)。
看说明kthread_create
在内核文档中。