问题标签 [gettimeofday]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
472 浏览

linux - ubuntu linux中的逻辑时间与物理时间

我正在测量两个事件之间的物理时间,如下所示:

但是现在,我需要一种方法来测量线程实际使用的逻辑时间。也就是说,理论上应该是物理时间,减去运行其他线程和/或系统和内核逻辑所花费的时间。

认为这是这样做的方法:

但是做了一些测量,我发现了两个问题:

1)对于某些测量,它大于物理时间,这是不对的(即:对于某些循环,物理时间将为 0.2495 .. 并且“逻辑”(使用 clock() 测量)将为 0.27,对于较小的测量它会只是四舍五入到零,这导致了第二个问题......)

2) 结果时间似乎比 gettimeofday 返回的时间粗多了

有没有更好的方法来测量 linux 中的本地线程时间?

0 投票
1 回答
541 浏览

unix - 日期使用gettimeofday?

当我这样做时:freeBSD 上的日期系统调用,它是否在内部使用 gettimeofday ?

另一个问题:我怎么知道“日期”命令的代码在系统中的位置?

谢谢。

0 投票
1 回答
2812 浏览

c - gettimeofday - 解释确切的 struct timeval 字段的含义

我正在尝试用 C 编写一个简单的函数,以纳秒为单位计算两个时刻之间的差异。为此,我想到了使用函数gettimeofday来更新给定的 struct timeval 的字段。

正如手册页所说,struct timeval 的字段是:

我的问题如下:

tv_usec字段是自 EPOCH 以来经过的整个时间(以微秒为单位),还是仅以微秒为单位的剩余时间?

例如,如果经过的时间是 100 秒和 25 微秒,那么该tv_usec字段的值是“25”还是“100000025”?

非常感谢。

0 投票
2 回答
2263 浏览

c - 将指向结构的指针传递给c中的函数时出错

我正在尝试将指向两个的指针传递struct timevals给一个函数,该函数将在 C 程序中输出两者之间的经过时间。但是,即使我取消引用这些指针,nvcc 也会抛出错误“表达式必须具有类类型”(这是一个 CUDA 程序)。以下是 main() 中的相关代码:

HostStopTimer() 的函数定义:

导致错误的行是对 的赋值elapsed。我没有太多在 C 中使用结构的经验,更不用说将指向结构的指针传递给函数,所以我不确定是什么导致了错误。

0 投票
1 回答
5080 浏览

c++ - 使用 gettimeofday 和 localtime 的准确时间戳

我正在尝试通过 gettimeoday 和 localtime 监视跨多个应用程序和数据路径的系统时间。在这个例子中,我想在我的代码运行之前获取系统时间(微秒精度)。我目前正在这样做:

据我了解,本地时间调用肯定会产生一些开销,并且会降低准确性。我可能完全错了,但我应该等到我的代码完成后才调用本地时间吗?我假设 localtime 只是对 gettimeofday 的结果进行半昂贵的转换,因此它应该放在 printf 语句之前。

0 投票
5 回答
39724 浏览

c - 相当于 gettimeofday 的更快

在尝试构建一个对延迟非常敏感的应用程序时,它需要每秒发送 100 条消息,每条消息都有时间字段,我们想考虑优化 gettimeofday。首先想到的是rdtsc基于优化。有什么想法吗 ?还有其他指针吗?返回的时间值所需的精度以毫秒为单位,但如果该值偶尔与接收器不同步 1-2 毫秒,这并不是什么大问题。尝试比 62 纳秒 gettimeofday 做得更好

0 投票
1 回答
1221 浏览

linux - 有没有从 Xenomai 实时线程调用 gettimeofday() 的安全方法?

我正在运行一个 Xenomai 实时线程,有时需要调用 gettimeofday(),以便根据 ptpd 找出当前时间。

但是,这样做似乎是不安全的:特别是,它偶尔会使 Xenomai 线程和 Linux 内核进入“活锁”情况,导致 gettimeofday() 旋转 CPU 并且永远不会返回,如此所述。

我的问题是,有没有一种安全的方法可以从 Xenomai 实时线程中获取 gettimeofday() 的信息?我正在考虑将我自己的 gettimeofday() 版本添加到我的 Linux 内核中(如果 read_seqretry() 返回 true,我的版本将失败,与发生这种情况时将永远循环的常规版本不同)。但是,如果有更好的方法,我不会立即开始定制 Linux 内核。

0 投票
5 回答
12567 浏览

c - 无法链接到嵌入式系统上的 gettimeofday,经过时间建议?

我正在尝试在嵌入式 ARM 设备上使用 gettimeofday,但似乎我无法使用它:

我假设我不能使用 gettimeofday() ?有没有人有任何关于能够分辨经过时间的建议?(例如,100 毫秒)

0 投票
2 回答
2308 浏览

php - gettimeofday() 总是可以访问的?

我试过 Google、php.net 和 php mailinglist 的档案,但我找不到我要找的东西。也许这是显而易见的,或者也许没有人对此感到好奇......

多年来,我一直使用 microtime() 来获取包括微秒在内的当前时间。然而,有人指点我手册页上的一句话:“这个函数只在支持 gettimeofday() 系统调用的操作系统上可用。”

PHP 的 gettimeofday() 暗示了同样的情况:“这是 gettimeofday(2) 的接口。”

但是......什么样的系统没有这个系统调用可用?一些谷歌搜索提供了许多 C 程序员试图在 Windows 上的 C 中获得 gettimeofday() 实现,因为它似乎不包含它。但是 PHP 的 microtime() 和 gettimeofday() 似乎在 Windows 上工作得很好(至少我可以到达的盒子)。此外,我似乎无法在网络上的任何地方找到似乎在调用之前检查 microtime() 或 gettimeofday() 是否存在的 PHP 代码,而且必须有很多 PHP 程序员在 Windows 上工作盒子那么...

我是否应该忽略手册中的这句话并相信这两个功能始终可用?或者是否有另一种跨平台的方式来获取系统时间,包括微秒,而不使用 microtime() 或 gettimeofday()?或者这两个函数会一直存在,但如果没有可用的 gettimeofday() 系统调用,就不给我微秒?

编辑1:

http://www.php.net/microtime

也许这在一定程度上澄清了我的观点。

0 投票
1 回答
661 浏览

c - C: gettimeofday() 每次运行都会产生相同的值

我正在尝试以分秒精度打印 ISO-8601 中的时间。YYYY-MM-DDThh:mm:ss.s

这是我的代码:

每次我运行它的输出是:

我注意到的另一件事是 tv_usec 大于一百万。