Linuxはアプリケーションに単調に増加するクロックを提供しますか
質問
Linux / Unix / Posixは、ユーザー空間アプリケーションにAPIを提供して、センチ秒からミリ秒の精度で単調に増加するクロックにアクセスしますか?
Linuxでは、/ proc / uptimeは、システムが稼働している秒数の浮動小数点数の文字列ベースの表現を提供します。
gettimeofday(2)は単調に増加するクロックを提供しません。
ITIMER_REAL時間ドメインでgetitimer(2)を使用し、(プラットフォームに依存する)最大値で開始するようにタイマーを設定し、生成された信号を無視することができますが、manページによると、タイマーを実行できる最長時間は約100です日、私の予想実行時間よりも短いです。
解決
CLOCK_MONOTONIC
でPOSIX clock_gettime()
関数を使用します。詳細については、 manページをご覧ください。
他のヒント
clock_gettimeがあります:
struct timespec tp;
clock_gettime(CLOCK_MONOTONIC, &tp);
所属していません StackOverflow