定时器的使用方法

时间:2022-02-03 00:44:05

静态定义时间结构体:struct timer_list timer;

初始化时间:

    setup_timer(&slave->timer, check_func, (unsigned long)slave);

修改 timeout的期望时间:

    mod_timer(&slave->timer,  jiffies +   msecs_to_jiffies(slave->time_out));

因为溢出问题,不采用直接比较的方法,可用以下方法比较数据
在当前时间jiffies在期望时间expires前返回true

time_before(jiffies, slave->timer.expires);

在当前时间jiffies在期望时间expires后返回true
time_after(jiffies, slave->timer.expires);