代码之家  ›  专栏  ›  技术社区  ›  thedarkguy

sysconf(_SC_CLK_TCK)与CLOCKS_PER_SEC

  •  5
  • thedarkguy  · 技术社区  · 9 年前

    我想知道上述常量的返回值之间有什么区别。

    sysconf(_SC_CLK_TCK) 收益 100
    CLOCKS_PER_SEC 收益 1,000,000

    所以,假设我有这个:

    ...
    start = clock();
    // Process starts here 
    /* does something */
    // Process ends here
    end = clock();
    double time = ((double) end-start)/CLOCK_PER_SEC; // this would return in seconds
    ...
    

    如何计算进程使用的刻度数,而不是时间?我是否使用时间 系统配置(_SC_CLK_TCK) CLOCK_PER_SEC ?

    我正在努力理解这些词的用法。

    1 回复  |  直到 4 年前
        1
  •  2
  •   jxh    9 年前

    根据文件, clock() 返回解析时间 CLOCKS_PER_SEC .

    其他时间函数返回分辨率为的值 滴答声 . sysconf(_SC_CLK_TCK) 提供每秒的刻度数。其中一个时间函数是 times() .