%20%E3%81%AE%E5%BC%95%E6%95%B0%E3%81%AE%E8%AA%AC%E6%98%8E%E3%81%8C%E5%BF%85%E8%A6%81%E3%81%A7%E3%81%99.png)
私は現在、Robert Love 著の Linux kernel development を読んでいます。スレッドについて読んでいるときに、いくつかの引数を取り、それに応じてカーネル スレッドを生成する kthread_create() 関数を見つけました。
struct task_struct *kthread_create(int (*threadfn)(void *data),
void *data,
const char namefmt[],
...)
私の知る限り、最初の引数は関数へのポインター、2 番目は threadfn() への引数、namefmt はプロセスの名前です。最後にある変数引数が何なのか、説明していただけますか?
答え1
namefmt
は -スタイルのフォーマット文字列でありprintf
、可変引数は対応する引数(存在する場合)です。
見る説明kthread_create
カーネルドキュメント内。