如何为wait_event_timeout函数设置超时= 1秒?
功能:wait_event_timeout (wq,condition,timeout);
如何使超时= 1秒。
如果调用函数那样:wait_event_timeout(queue,flag!='n',30*HZ);
超时= ???
答案 0 :(得分:5)
函数wait_event_timeout在jiffies中获取其超时值。使用常量HZ
(每秒计时器滴答数)来指定jiffies中的时间。表达式HZ
相当于一秒钟。表达式30 * HZ
相当于30秒。
wait_event_timeout (wq,condition,HZ);
答案 1 :(得分:4)
wait_event_timeout在jiffies中超时。并且HZ
是linux中定义的标识符,表示1秒。因此n * HZ
表示n
秒。希望你现在可以将jiffies时间转换为现实世界时间,例如n millisecond = n*HZ/1000
答案 2 :(得分:0)
只是一句话:考虑到HZ因系统而异。在大多数系统/内核上,我知道Hz设置为100.因此将其除以1000得到毫秒将始终以值0结束。