zoukankan      html  css  js  c++  java
  • [置顶] Linux 内核定时器

    #include <linux/module.h>

    #include <linux/init.h>

    #include <linux/sched.h>

    #include <linux/timer.h>

    struct timer_list my_timer;

    void func(unsigned long data)

    {

        printk("time out!\n data: %ld, pid: %ld\n", data, current->pid);

        mod_timer(&my_timer, jiffies + 3*HZ); //修改定时器的时间为2

    }

    static int __init my_timer_init(void)

    {

        init_timer(&my_timer); //初始化定时器

        my_timer.expires = jiffies + 5*HZ; //设置定时器的时间5

        my_timer.function = func; //定时器时间到,需要执行的函数

        my_timer.data = (unsigned long)99; //func函数的参数

        add_timer(&my_timer); //注册定时器

        printk("This is my timer  pid: %ld\n", current->pid);

        return 0;

    }

    static void __exit my_timer_exit(void)

    {

        del_timer(&my_timer); //注销定时器

        printk("Good Bye\n");

    }

    MODULE_LICENSE("GPL");

    MODULE_AUTHOR("MIKE CHEN");

    module_init(my_timer_init);

    module_exit(my_timer_exit);

  • 相关阅读:
    iOS开发UI篇—xib的简单使用
    iOS开发UI篇—字典转模型
    iOS开发UI篇—九宫格坐标计算
    iOS开发UI篇—懒加载
    2020121301-01
    2020120501-01
    2020113001-梦断代码-3
    2020112801-01
    2020112401
    2020112201-1
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3105091.html
Copyright © 2011-2022 走看看