Linux下实现周期任务的方法?
大家好:
众所周知,目前在Linux下实现周期任务常用的方法为使用睡眠函数,如usleep(),msleep()等等。但是,这是粗粒度的方法,它无法将任务自身的执行时间考虑到周期内。请问有没有什么函数,可以将任务声明成周期调度的。即任务每个周期开始时,自动变成就绪态,执行结束后,放入等待队列。
谢谢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我上面的回答有点问题。
如果延时不到一个tick,当然不能使用定时器了,就只能使用mdelay/udelay等函数了。
在tick级别的周期执行,使用定时器是没有问题的,这个开销很小。
定时器的开销很大吗?
如果考虑比较准确的周期执行,是不是应该考虑使用定时器?
不过,使用定时器,如果到期的时间比较短,就显得有点重量级了。