我想實現需要與線程一起工作的kthread。Kthread:將結構傳遞到函數
我嘗試通過結構這樣它在編譯時導致一個錯誤:
int thread_function(void* data)
{
killStruct obj = (killStruct) data;
//msleep((unsigned int) time);
printk(KERN_INFO"From the inner Thread: PID: %d, Time:%ld\n",obj->pid,obj->millisecondsToKill);
//kill prozess by ID
return 0;
}
static void prozess_kill(struct killStruct obj)
{
task = kthread_run(&thread_function,(void*)obj ,obj->pid);
}
什麼是一個結構傳遞給這樣的函數指針
這可以工作,但是當出於某種奇怪的原因,obj結構的pid值在線程函數內部是不同的。什麼可能是錯的? – arnoapp
您正在傳遞的不是obj結構。 – this