您如何使用 Chrome 的调试器协议从时间戳中导出 walltime?
How do you derive walltime from timestamp using Chrome's debugger protocol?
我一直在构建一个 Chrome 扩展,部分使用 Chrome debugger protocol。
Network domain like requestWillBeSent 中的某些事件包括 "timestamp" 以及 "wallTime."
walltime 是自 1970 格式以来的常规秒数,但时间戳以秒为单位但不清楚它的 0 在哪里,而且许多事件没有 wallTime 所以我 真的 试图弄清楚如何从 timeStamp 派生 wallTime。
基于 this 我认为是基于 navigationStart 值,但是根据扩展的 navigationStart 的背景页面或事件发起 navigationStart 的页面都没有产生正确的日期。
是否可以使用时间戳来获取 wallTime 还是我运气不好?
根据InspectorNetworkAgent.cpp中的源代码:
wallTime
是currentTime()
(正常系统时间)
timestamp
是 monotonicallyIncreasingTime()
在 Windows 上,它基于系统启动后经过的毫秒数,您无法从扩展程序中获取该信息。
在 POSIX 系统上(例如 Linux)CLOCK_MONOTONIC 模式中的 clock_gettime
用于表示从某个未指定的起点开始的单调时间。
根据time.h中的源代码:
TimeTicks and ThreadTicks represent an abstract time that is most of the time
incrementing, for use in measuring time durations. Internally, they are
represented in microseconds. They can not be converted to a human-readable
time, but are guaranteed not to decrease (unlike the Time class). Note that
TimeTicks may "stand still" (e.g., if the computer is suspended), and
ThreadTicks will "stand still" whenever the thread has been de-scheduled by
the operating system.
我一直在构建一个 Chrome 扩展,部分使用 Chrome debugger protocol。 Network domain like requestWillBeSent 中的某些事件包括 "timestamp" 以及 "wallTime."
walltime 是自 1970 格式以来的常规秒数,但时间戳以秒为单位但不清楚它的 0 在哪里,而且许多事件没有 wallTime 所以我 真的 试图弄清楚如何从 timeStamp 派生 wallTime。 基于 this 我认为是基于 navigationStart 值,但是根据扩展的 navigationStart 的背景页面或事件发起 navigationStart 的页面都没有产生正确的日期。
是否可以使用时间戳来获取 wallTime 还是我运气不好?
根据InspectorNetworkAgent.cpp中的源代码:
wallTime
是currentTime()
(正常系统时间)timestamp
是monotonicallyIncreasingTime()
在 Windows 上,它基于系统启动后经过的毫秒数,您无法从扩展程序中获取该信息。
在 POSIX 系统上(例如 Linux)CLOCK_MONOTONIC 模式中的
clock_gettime
用于表示从某个未指定的起点开始的单调时间。根据time.h中的源代码:
TimeTicks and ThreadTicks represent an abstract time that is most of the time incrementing, for use in measuring time durations. Internally, they are represented in microseconds. They can not be converted to a human-readable time, but are guaranteed not to decrease (unlike the Time class). Note that TimeTicks may "stand still" (e.g., if the computer is suspended), and ThreadTicks will "stand still" whenever the thread has been de-scheduled by the operating system.