如何使wait_event_timeout函数超时 = 1 秒?功能 : wait_event_timeout (wq,condition,timeout);
如何使超时 = 1 秒。
如果调用函数像这样:wait_event_timeout(queue,flag!='n',30*HZ);
超时 =???
wait_event_timeout以 jiffies 为单位获取其超时值。使用常量HZ
(每秒计时器时钟周期数)以 jiffies 为单位指定时间。 表达式 HZ
相当于一秒。 表达式 30 * HZ
相当于 30 秒。
wait_event_timeout (wq,condition,HZ);
jiffies为单位超时。 HZ
是Linux中定义的标识符,表示1秒。所以n * HZ
意味着n
秒。希望现在您可以将 jiffies 时间转换为现实世界的时间,例如n millisecond = n*HZ/1000
只是一个评论:考虑到 HZ 因系统而异。 在大多数系统/内核上,我知道 Hz 设置为 100。 因此,将其除以 1000 以获得毫秒将始终以值 0 结束。