如何使用 Chrome 的调试器协议从时间戳导出 walltime?

2024-01-05

我一直在构建一个 Chrome 扩展程序,部分使用Chrome 调试器协议 https://chromedevtools.github.io/debugger-protocol-viewer/。 中的某些事件网络域 https://chromedevtools.github.io/debugger-protocol-viewer/tot/Network/ like 请求将被发送 https://chromedevtools.github.io/debugger-protocol-viewer/tot/Network/#event-requestWillBeSent包括“时间戳”和“wallTime”。

walltime 是自 1970 年以来的常规秒格式,但时间戳以秒为单位,但不清楚它的 0 在哪里,并且许多事件没有 wallTime 所以我really试图找出如何从时间戳导出 wallTime。 基于this https://developers.google.com/web/updates/2016/01/high-res-timestamps?hl=en我相信是基于 navigationStart 值,但并没有根据扩展程序的 navigationStart 的背景页面或事件发起的 navigationStart 页面产生正确的日期。

是否有可能使用时间戳来获取 wallTime 或者我运气不好?


根据源代码:

  • wallTime is currentTime()(正常系统时间)
  • timestamp is

    在 Windows 上,它基于自系统启动以来经过的毫秒数,并且您无法从扩展获取该信息。

    在 POSIX 系统上(例如 Linux)clock_gettime在 CLOCK_MONOTONIC 模式中,使用表示自某个未指定的起始点以来的单调时间。

    根据源代码:

    TimeTicks 和 ThreadTicks 代表一个抽象的时间,大部分时间 递增,用于测量持续时间。在内部,他们是 以微秒表示。它们无法转换为人类可读的 时间,但保证不会减少(与 Time 类不同)。注意 TimeTicks 可能“静止”(例如,如果计算机暂停),并且 每当线程被取消调度时,ThreadTicks 将“保持静止” 操作系统。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 Chrome 的调试器协议从时间戳导出 walltime? 的相关文章

随机推荐