概述
为什么80%的码农都做不了架构师?>>>
功能:使进程睡眠一定时间
原型:
#include <linux/wait.h>
long interruptible_sleep_on_timeout(wait_queue_head_t *q, long timeout);
说明: 在 q 指向的等待队列上注册当前运行中的进程信息,并使调用的进程进入睡眠状态。如果未满足苏醒条件,即使没有调用 wake_up_interruptible() 函数,只要超过设定的 timeout 值,进程也会自动苏醒。
变量: q : 等待队列变量指针。 timeout : 依赖 Hz 的进程苏醒时间。2.6 内核中以 0.001s 为单位,2.4 内核中以 0.01s 为单位。 返回值: 进程唤醒时,取决于经历多少个 Hz 的时间,返回值的时间值为正数。
但现在出现一个这样的问题
interruptible_sleep_on_timeout(Wait_queue,6000) 在没有其他函数唤醒的情况下等待6s,但是这个函数会反复计数,比如等待10s后它会返回4s,相当于一直在这个函数上阻塞执行。
转载于:https://my.oschina.net/lvyi/blog/301860
最后
以上就是飘逸山水为你收集整理的interruptible_sleep_on_timeout()睡眠超时设定的全部内容,希望文章能够帮你解决interruptible_sleep_on_timeout()睡眠超时设定所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复