wait_event_timeout 関数のタイムアウトを 1 秒にするにはどうすればよいですか? 関数 :wait_event_timeout (wq,condition,timeout);
タイムアウトを 1 秒にする方法を教えてください。
そして、そのような関数を呼び出す場合: wait_event_timeout(queue,flag!='n',30*HZ);
タイムアウト=???
wait_event_timeout 関数のタイムアウトを 1 秒にするにはどうすればよいですか? 関数 :wait_event_timeout (wq,condition,timeout);
タイムアウトを 1 秒にする方法を教えてください。
そして、そのような関数を呼び出す場合: wait_event_timeout(queue,flag!='n',30*HZ);
タイムアウト=???
関数 wait_event_timeout は、タイムアウト値を jiffies 単位で取得します。定数HZ
(1 秒あたりのタイマー ティック数) を使用して、時間を jiffy 単位で指定します。式HZ
は 1 秒に相当します。式30 * HZ
は 30 秒に相当します。
wait_event_timeout (wq,condition,HZ);
wait_event_timeoutは jiffies でタイムアウトします。LinuxでHZ
定義された識別子で、1秒を意味します。だから秒n * HZ
を意味します。n
次のように、ジフィー時間を現実世界の時間に変換できることを願っていますn millisecond = n*HZ/1000