【问题标题】:Get uptime in seconds or miliseconds on Unix like systems在类 Unix 系统中以秒或毫秒为单位获得正常运行时间
【发布时间】:2012-01-11 12:38:00
【问题描述】:

我需要一种方法,它可以给我从系统启动以来经过的毫秒数或秒数。 我可以解析 /proc/uptime ,但我不能承受在这个 I/0 和解析上失去性能。

我正在使用 Linux 和 C/C++。也许我可以放一些 Qt/Boost,但最好是原生的。

【问题讨论】:

  • 操作系统启动正常运行时间或您的应用正常运行时间?
  • 检查下面的帖子,家伙说得对,使用 sysinfo.h,我不确定你是否想要毫秒,因为 sysinfo 中的 uptime 返回值以秒为单位

标签: c++ c linux unix


【解决方案1】:

为什么你买不起/proc/uptime?它不是真正的文件,因此读取它应该很快(不涉及真正的 i/o,因为/proc/ 文件系统包含伪文件)。您是否对其读数进行了基准测试?

您也可以使用CLOCK_MONOTONIC 调用clock_gettime

注意。这是 Linux 特有的。

【讨论】:

  • /proc 文件不是磁盘文件,很好的答案。 /proc 存在于内核中。
【解决方案2】:

你可以试试sysinfo.h

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-09-21
    • 1970-01-01
    • 1970-01-01
    • 2015-07-17
    • 2011-08-27
    • 2015-05-29
    • 2015-01-24
    • 1970-01-01
    相关资源
    最近更新 更多