当前位置: 技术问答>linux和unix
请问linux内核中怎么让进程延时一段时间执行
来源: 互联网 发布时间:2016-03-13
本文导语: 请问linux内核中怎么让进程延时一段时间执行 像SLEEP那样,把CPU让给别的进程,而不是一直占用CPU 最好是微秒级别的 谢谢 | 内核代码有时候会需要将某些任务推迟执行,针对这种需求,内核也提...
请问linux内核中怎么让进程延时一段时间执行
像SLEEP那样,把CPU让给别的进程,而不是一直占用CPU
最好是微秒级别的
谢谢
像SLEEP那样,把CPU让给别的进程,而不是一直占用CPU
最好是微秒级别的
谢谢
|
内核代码有时候会需要将某些任务推迟执行,针对这种需求,内核也提供了许多的延迟方法来满足它。这些方法有忙等待、短延迟以及schedule_timeout()。其中忙等待的方法最容易想到,但同时也是性能最差的一个,它是通过不断消耗cpu来换取时间的流逝,对于系统的其他部分来说,这可以说是个糟糕的事情,因为处理器被独占并且做着无意义的事情,它的常见用法如下:
while(time_before(jiffies,delay))
;
while(time_before(jiffies,delay))
;
|
应该可以阻塞内核程序
wait_event
这样就可以把CPU让出来了
wait_event
这样就可以把CPU让出来了
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。