Clock_getresがUbuntu 16.04 Clock_gettime()の解像度を取得する正しい関数ですか?

Clock_getresがUbuntu 16.04 Clock_gettime()の解像度を取得する正しい関数ですか?

Clock_getresがUbuntu 16.04 Clock_gettime()の解像度を取得する正しい関数ですか?

それでは、計算に結果をどのように使用できますか?

64ビット整数の精度は15ビットです。 IEEE 754-2008標準10進数64の場合、52ビット倍精度有効数字は53ビット分解能を提供します。公式があればよかったです。

@Julie Pelletierは、1日前にLinux Clock_gettimeの最適時間単位が5msであるという優れたテスト結果について私に言いました。

ベストアンサー1

以下を使用してclock_gettime解像度を測定しました。

    struct timespec now;
    struct timespec resolution;

    clock_gettime(CLOCK_MONOTONIC, &now);
    clock_getres(CLOCK_MONOTONIC, &resolution);
    printf("secs %d  nanoseconds %d\n",resolution.tv_sec, resolution.tv_nsec);

結果:

lacrosse@lacrosse-ThinkStation-S10:~/Debug$ ./a.out 秒 0 ナノ秒 1

この結果は、Rutgers Computer Science Departmentのオンライン文書を読んだ後に期待したものとは異なります。この記事では、はるかに高いと述べました(例:1秒)。

おすすめ記事