linux内核中线程如何创建

linux内核中线程如何创建。

东西/原料

  • 测试东西:台式电脑
  • 测试情况:linux操作系统

方式/步调

  1. 1

    在模块初始化时,可以进行线程的建立。利用下面的函数和宏界说:

  2. 2

    建立线程具体过程,示例如下:

    static struct task_struct *test_task;

    接下图内容。

  3. 3

    线程函数里,完当作所需的营业逻辑工作。本家儿要框架如下所示:

    int threadfunc(void *data){

    接下图内容:

  4. 4

    在模块卸载时,可以竣事线程的运行。利用下面的函数:

    int kthread_stop(struct task_struct *k);

    例如:

  5. 5

    总结:

    1、建立线程;

    2、操纵线程函数,完当作所需营业逻辑;

    3、竣事线程。

    END

注重事项

  • 1、在挪用kthread_stop函数时,线程函数不克不及已经运行竣事。不然,kthread_stop函数会一向进行期待。
  • 2、线程函数必需能让出CPU,以便能运行其他线程。同时线程函数也必需能从头被调剂运行。在例子程序中,这是经由过程schedule_timeout()函数完当作的。
  • 发表于 2020-05-05 19:00
  • 阅读 ( 922 )
  • 分类:其他类型

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
admin
admin

0 篇文章

作家榜 »

  1. xiaonan123 189 文章
  2. 汤依妹儿 97 文章
  3. luogf229 46 文章
  4. jy02406749 45 文章
  5. 小凡 34 文章
  6. Daisy萌 32 文章
  7. 我的QQ3117863681 24 文章
  8. 华志健 23 文章

联系我们:uytrv@hotmail.com 问答工具